日期:2014-05-17  浏览次数:20854 次

选号系统 数字上下滚动问题
好:
近期想做一个随机选号系统,已经实现数字随机变换选号效果;现打算将数字变换修改为上下随机滚动效果,现在遇到如下问题:
1、随机变换,我使用的修改label.text属性实现,但是上下滚动不可能
请问各位有什么好的建议

------解决方案--------------------
给你实现了一个简单的,
1.拖一个Panel到Form上面;
2.拖一个Label到Panel上面,注意是Panel上面加Label,不然的话就实现不了效果了;

设置Panel大概一个数字的高度,Label显示0-9十个数字(Label是竖排显示数字的,设置label.TextAlign = TopCenter,然后设置Label合适的大小),如下图效果:


代码如下,利用的是Panel的固定大小,挡住Label的其他部分,让Label上下移动,只显示一个数字(这里就要主要的是Label在Panel上面,而不是直接在Form上面,才能达到滚动的效果)
using System;
using System.Drawing;
using System.Windows.Forms;
using System.Threading;

namespace TestWinForm
{
    public partial class FormTest : Form
    {
        public FormTest()
        {
            InitializeComponent();
        }

        private bool isStart = true;

        private void Test()
        {
            Point current = lblNumberArr.Location;
            int y = 0;
            bool up = true;
            while (isStart)
            {
                if (y == -lblNumberArr.Size.Height)
                {
                    up = false;
                }
                else if (y == 0)
                {
                    up = true;
                }

                if (up)
                {
                    y = current.Y - 1;
                }
       &nbs