Winform小软件 —— 摇奖机
Winform小软件 —— 摇奖机
![](/assets/blank.gif)
![](/assets/blank.gif)
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace 摇奖机
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Control.CheckForIllegalCrossThreadCalls = false;
//Form的相关“属性”设置:
this.FormBorderStyle = FormBorderStyle.None;
this.TransparencyKey = Color.Yellow; //将某颜色设置为透明
this.BackgroundImage = new Bitmap("Images/Transball.bmp");
}
bool isFormMove = false; //是否移动
int x, y; //获得鼠标初始位置
//鼠标按下
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
isFormMove = true;
x = e.X;
y = e.Y;
}
}
//鼠标移动
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (isFormMove)
{
//获得鼠标当前位置
Point p = Form.MousePosition;
//鼠标当前位置 - 鼠标初始位置 = 窗体要移动的位置
this.Location = new Point(p.X - x, p.Y - y);
}
}
//鼠标释放
private void Form1_MouseUp(object sender, MouseEventArgs e)
{
isFormMove = false;
}
/*
* 问题:
* 在Form里加了一个Button后,Form的KeyPress事件在按下Enter键时就不能触发了?
* 解决方案:
* 重写该方法实现,扩展ProcessDialogKey方法调用Form1_KeyPress事件 */
protected override bool ProcessDialogKey(Keys keyData)
{
if (keyData == Keys.Return)
{
//this.KeyPreview = true;
KeyPressEventArgs myKeyPressEventArgs = new KeyPressEventArgs(Convert.ToChar(keyData));
Form1_KeyPress(this, myKeyPressEventArgs);
}
return base.ProcessDialogKey(keyData);
}
int n = 1;
Thread thread1, thread2, thread3, thread4, thread5, thread6;
//按键事件
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (n % 2 == 1)
{
n++;
thread1 = new Thread(randomLabelText);
thread1.Start(this.label1);
thread1.Join(10); //让别的线程停止
thread2 = new Thread(randomLabelText);
thread2.Start(this.label2);
thread2.Join(5); //让别的线程停止
thread3 = new Thread(randomLabelText);
thread3.Start(this.label3);
thread3.Join(7);
thread4 = new Thread(randomLabelText);
thread4.Start(this.label4);
thread4.Join(14);
thread5 = new Thread(randomLabelText);
thread5.Start(this.label5);
thread5.Join(3);
thread6 = new Thread(randomLabelText);
thread6.Start(this.label6);
thread6.Join(13);
}
else
{
thread1.Abort(); thread2.Abort(); thread3.Abort();
thread4.Abort(); thread5.Abort(); thread6.Abort();
label7.Text = "中奖号码:" + label1.Text + " " + label2.Text + " " + label3.Text;
label7.Text += " " + label4.Text + " " + label5.Text + " " + label6.Text;
n--;
}
}
//产生随机数给Label控件
private void randomLabelText(object obj)
{
Label lb = obj as Label;
Random rand = new Random();
while (true)
{
int i = rand.Next(0, 10);
lb.Text = i.ToString();
Thread.Sleep(100);
}
}
private void button1_MouseClick(object sender, MouseEventArgs e)
{
Application.Exit();
}
}
}
作者: XuGang 网名:钢钢 |
出处: http://xugang.cnblogs.com |
声明: 本文版权归作者和博客园共有!转载时必须保留此段声明,且在文章页面明显位置给出原文连接。 |
转载于:https://www.cnblogs.com/stevenjson/archive/2012/04/17/2454598.html
Winform小软件 —— 摇奖机相关推荐
- HTML: 网页摇奖机(抽号机)
HTML: 网页摇奖机(抽号机) 背景 一.需求分析 二.网页设计 1.界面设计 a. 取色 b.标题和背景 c.按钮与输入框 2.随机数逻辑设计 3.完整代码 三.效果展示 总结 背景 前两天回了趟 ...
- java swing写的双色球摇奖机
最近没什么事,翻看以前的博客,看到在学校那会写的小程序,那时学软件开发的目的就是做GUI啊,现在这些仍是兴趣之一 偶然发现eclipse luna自带有一个windowbuilder,一个java 可 ...
- 用C#(入门) 双色球摇奖机 随机数实现
这两天在深入学习C#.NET,正好同事做发财梦吵着去买彩票,于是心血来潮,利用昨晚工作空闲,写了一个双色球摇奖机的桌面程序. 程序在我的google论坛里了.下载地址如下(有点长:)): http:/ ...
- 摇奖机是按照金字塔的原理设计的
摇奖机是按照金字塔的原理设计的 摇奖机是按照金字塔的摇奖机是按照金字塔的原理设计的 摇奖机是按照金字塔的原理设计的 众所周知,摇奖机其实就是一台人工控制的计算机.双色球单次的销量如果不超过3000万元 ...
- 一点关于线程和摇奖机
一点关于线程和摇奖机 怎么说呢.第一呢.还是说一下什么是进程吧.进程呢就是一个正在执行的实例.它包含着一个运行程序需要的所有资源,进程之间是相互独立的,一个进程是没办法直接访问另外一个进程的数据的.然 ...
- 网页摇奖机(抽号机)2.0
网页摇奖机(抽号机)2.0 背景 一.改进需求分析 二.改进代码 1.前端修改 2.后端修改 三.完整代码 走过路过点个赞赞吧QwQ! 背景 话说上回,我帮高中老师做了个抽号机,然后: 现在老师们的花 ...
- IOS开发基础之摇奖机案例
IOS开发基础之摇奖机案例 // ViewController.m // 33-摇奖机器 // Created by 鲁军 on 2021/3/9. #import "ViewControl ...
- 【C51单片机】抽号摇奖机设计(仿真)
1.功能描述 单片机连接12864(st7920)液晶显示器和1个按键接INT0,模拟一个抽奖机. 液晶初始显示"祝你好运!": 按一下按键,液晶显示"开始抽奖" ...
- 电子摇奖机电路的设计仿真与制作——数电课设(包含PCB文件)
文章目录 前言 一.课程设计任务书 二.摘要 三.正文 1.绪论 1.1设计背景 1.2 2.电子摇奖机设计方案及单元电路 2.1电子摇奖机总体设计方案 2.2单元电路设计方案 2.2.1脉冲产生电路 ...
最新文章
- java 数组 反射_java数组的反射
- java上传文件图片
- Java黑皮书课后题第3章:**3.27(几何:点是否在三角形内)假设一个平面上有一个直角三角形。编写程序,提示用户输入一个点的x坐标和y坐标,然后判断这个点是否在该三角形内
- Socket.io 深入理解
- oracle的错误代码如何查看对应的错误信息
- [Angularjs]angular ng-repeat与js特效加载先后导致的问题
- 多项式加减 List
- php检索特定的关键字的函数,javascript、php关键字搜索函数的使用方法
- 功能测试用例设计方法,一文带你了解用例设计,再也不担心用例了
- 2022苹果ios个人开发中注册遇到的问题
- Ubuntu16.04 启动项修复
- android获取手机的国家码
- 【探花交友DAY 08】左滑不喜欢右滑喜欢以及附近的人
- JAVA|圆周长、面积
- Python Matplotlib教程
- 【内核隔离开启内存完整性已关闭不兼容的驱动程序驱动程序卸载】
- 线性回归预测波士顿房价
- project server 2016的应用
- HTML——图片压缩
- 如何搭建卫星地图离线地图服务?