基于C#设计一个双色球选号工具

2022-07-15,,,

窗体展示

开始后展示

结束摇色展示

代码

导入的命名空间

using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.threading;
using system.threading.tasks;
using system.windows.forms;

初始化私有变量

private string[] red = { "01","02","03","04","05","06",
        "07","08","09","10","11","12","13","14","15","16","17"};
        private string[] blue = {"01","02","03","04","05","06",
        "07","08","09","10" };
        private bool begin = true;

页面初始化

private void form1_load(object sender, eventargs e)
        {
            
            foreach(var item in groupbox1.controls)
            {
                if(item is label)
                {
                    ((label)item).text = "00";
                 
                }
            }
            button2.enabled = false;

        }

开始按钮

private void button1_click(object sender, eventargs e)
        {
            button1.text = "已经开始";
            button1.enabled = false;
            button2.enabled = true;
            begin = true;

            taskfactory f = new taskfactory();
            list<task> list = new list<task>();
            foreach(var item in groupbox1.controls)
            {
                if(item is label)
                {
                    ((label)item).text = "00";
                }
            }
            foreach( var item in groupbox1.controls)
            {
                if(item is label)
                {
                    label lbl = item as label;
                    list.add(f.startnew(() =>
                    {
                        random r = new random();
                        while (begin)
                        {
                            string txt = "";
                            if (lbl.name.contains("red"))
                            {
                                lock (obj)
                                {
                                    
                                    txt = red[r.next(0, 17)];
                                    update(lbl, txt);
                                    
                                }
                            }
                            else
                            {
                                txt = blue[r.next(0, 10)];
                                update(lbl, txt);
                            }
                            thread.sleep(10);
                        }
                    }));
                }
            }
            f.continuewhenall(list.toarray(), tlist => this.showresult());
        }

数字更新

private void update(label label , string text)
        {
            this.invoke(new action(() =>
            {
                label.text = text;
            }));
        }

结束按钮

private void button2_click(object sender, eventargs e)
        {
            button1.text = "开始";
            button1.enabled = true;
            button2.enabled = false;
            begin = false;
        }

结果显示

private void showresult()
        {
            stringbuilder s = new stringbuilder();
            s.append(lblred1.text + " ");
            s.append(lblred2.text + " ");
            s.append(lblred3.text + " ");
            s.append(lblred4.text + " ");
            s.append(lblred5.text + " ");
            s.append(lblred6.text + " \n");
            s.append($"bluebob: {lblblue.text}");
            messagebox.show(s.tostring());
        }

以上就是基于c#设计一个双色球选号工具的详细内容,更多关于c#双色球的资料请关注其它相关文章!

《基于C#设计一个双色球选号工具.doc》

下载本文的Word格式文档,以方便收藏与打印。