C# 摇奖机实例(线程)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace yaojiangji
{
    public partial class Form1 : Form
    {
        List<Label> lbList = new List<Label>();

        bool isCreate = false;

        public Form1()
        {
            InitializeComponent();

            Control.CheckForIllegalCrossThreadCalls = false;
        }

        private void btnStart_Click(object sender, EventArgs e)
        {
            if (isCreate)
            {
                isCreate = false;
                this.btnStart.Text = "开始";
            }
            else
            {
                isCreate = true;
                this.btnStart.Text = "结束";

                //方法一:

                /*
                new Thread(
                        ()=>

                        {
                            Random random = new Random();

                            while (isCreate)
                            {

                                for (int i = 0; i < 6; i++)
                                {

                                    lbList[i].Text = random.Next(1, 10).ToString();

                                }

                                Thread.Sleep(200);
                            }
                        }

                    ).Start();
                 */

                //方法二:

                Thread thread = new Thread(new ThreadStart(start));

                //设置后台线程
                thread.IsBackground = true;

                thread.Start();

            }

        }

        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 6; i++)
            {
                Label label = new Label();
                label.Text = i.ToString();
                label.AutoSize = true;
                label.Location = new Point(50*i+15,50);

                lbList.Add(label);
                this.Controls.Add(label);
            }
        }

        public void start()
        {

            Random random = new Random();

            while (isCreate)
            {
                for (int i = 0; i < 6; i++)
                {

                    lbList[i].Text = random.Next(1, 10).ToString();

                }

                Thread.Sleep(200);
            }
        }
    }
}
时间: 2024-10-11 22:04:34

C# 摇奖机实例(线程)的相关文章

JAVA小项目之摇奖机

功能: 点击”摇杆“开始: 两种结束滚动方式,A:点击”摇杆“ B:分别点击 对应结果框的按钮: 实现最后减速停下来效果,模拟真实摇奖机. 知识点:A.线程的控制,B.图片轮播原理 效果图: "为什么传不了图片?" 窗口类 1 package com.gxlee.lhj; 2 3 import java.awt.Color; 4 import java.awt.Container; 5 import java.awt.Graphics; 6 import java.awt.event.

利用多线程写一个摇奖机小程序

1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Threading; 9 using System.Threading.Tasks; 10 using System.Window

43_2013年11月22日 线程池 Socket(Thread Lock Process 摇奖 线程池ThreadPool)

1>模拟线程池,生产者消费者问题 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; namespace Product { class Program { static void Main(string[] args) { //创建一个池子 MyConncetion[]

Python之路【第八篇】:堡垒机实例以及数据库操作

Python之路[第八篇]:堡垒机实例以及数据库操作 堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: + import paramiko transport = paramiko.Transport(('hostname', 22)) transport.connect(username='wupeiqi', password='123') ssh

P235 实战练习(集合类2)和摇奖程序

1.分别向Set集合以及List集合中添加“A”.“a”.“c”.“C”.“a”5个元素,观察重复值“a”能否在List集合以及Set集合中成功添加. 1 package org.hanqi.practise; 2 import java.util.*; 3 public class Test2 { 4 5 public static void main(String[] args) { 6 7 Set<String> s = new HashSet<String>(); 8 s.

C#多线程编程实例 线程与窗体交互

代码: public partial class Form1 : Form { //声明线程数组 Thread[] workThreads = new Thread[10]; public Form1() { InitializeComponent(); } //此委托允许异步的调用为Listbox添加Item delegate void AddItemCallback(string text); //这种方法演示如何在线程安全的模式下调用Windows窗体上的控件. private void

vc 基于对话框多线程编程实例——线程之间的通信

 vc基于对话框多线程编程实例--线程之间的通信 实例: vc 基于对话框多线程编程实例--线程之间的通信,码迷,mamicode.com

Python之路:堡垒机实例以及数据库操作

Python之路:堡垒机实例以及数据库操作 一.堡垒机前戏 开发堡垒机之前,先学习Python的paramiko模块,该模块基于SSH用于连接远程服务器并执行相关操作. SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: #!/usr/bin/env  python# --*--coding:utf-8 --*--import paramiko #创建SSH对象ssh = paramiko.SSHClient()# 允许连接不在know_hosts文件中的主机ssh.se

冒泡,二分制,模拟摇奖

1. 实现冒泡排序算法. //冒泡排序 int [] a={1,7,9,3,6,0,2}; int z; for(int i=0;i<a.length;i++) { for(int j=i;j<a.length;j++) { if(a[i]>a[j]) { z=a[i]; a[i]=a[j]; a[j]=z; } } System.out.print(a[i]);  } 2.实现二分查找法. public int binarySearch(int[] data,int aim){//以i