去年班级元旦晚会制作的要好系统,一直都忘记把代码贡献出来,把制作方法和大家说一下。
元旦party的logo是sxy同学制作的
界面背景是zlq同学制作的

最后效果图


功能介绍:
点击开始,可以在“冲冲冲”里滚动姓名
点击结束,滚动停止
在文本框里输入姓名,添加幸运儿,后台文件会多出一个名字,可用于增加概率

下面讲一下制作的方法

一、环境

安装有C#WinForm窗体程序的Visual Studio

二、项目细节设置

  1. 设置程序icon

    点击这里,选中整个项目,按F4,进入属性界面

三、界面布局

  1. TabControl
    拖一个TabContorl出来
    在属性种设置Dock为Fill充满整个窗体
  2. TabPage
    设置TabPage背景图片,设置page名为摇号系统
  3. 其他控件
    button1:添加幸运儿
    button2:开始/结束
    label1:冲冲冲
    label2:当前人数
    textBox1
    timer1
    其他内容都是背景图片里面的
    控件位置随意放,自己感觉

四、代码

  1. 添加按钮单机事件的时候,需要在窗体里面双击按钮,进入button1_Click事件代码里,或者在时间里面双击click事件
  2. 时钟timer1,用于控制姓名滚动,添加时间,需要双击timer1,或者在事件里面双击Tick事件
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;namespace Rolling
{public partial class Lucky : Form{//定义random的上下限初始值,防止空指针异常随便些一个数,maxValue后面会重新赋值int minValue = 0;int maxValue = 42;Random r = new Random();//定义文件路径static string path = "Lucky.txt";//读取文件的行数private int line_num(){string[] lines = File.ReadAllLines(path);int i = lines.Length;return i;}//随机时钟private void timer1_Tick(object sender, EventArgs e){//设置随机数的上下限,标准规定的取值是,左闭右开string[] content = File.ReadAllLines(path);maxValue = line_num();int i = r.Next(minValue, maxValue);label1.Text = content[i];timer1.Start();}//添加幸运儿按钮private void button1_Click(object sender, EventArgs e){//在文件末尾追加一行FileStream fs = new FileStream(path, FileMode.Append);StreamWriter sw = new StreamWriter(fs);//开始写入sw.WriteLine(textBox1.Text);//清空缓冲区sw.Flush();//关闭流sw.Close();fs.Close();label2.Text = "当前人数:" + line_num().ToString();}//抽奖开始结束按钮private void button2_Click(object sender, EventArgs e){if (button2.Text == "开始"){ button2.Text = "结束"; timer1.Start(); }else{ button2.Text = "开始"; timer1.Stop(); }}private void Form1_Load(object sender, EventArgs e){label2.Text = "当前人数:"+line_num().ToString();}public Lucky(){InitializeComponent();}}
}

五、名称txt文件

我们在程序里面定义了一个static string path = “Lucky.txt”;
具体Lucky.txt需要需要存放在:自己的工程目录\bin\Debug
Lucky里面放姓名,每个姓名一行

到此已经完成,可以调试运行了,运行结果就和文章最开始的那样

C#WinForm应用程序——简易摇号系统相关推荐

  1. 哈尔滨车牌摇号系统遭遇黑客攻击瘫痪

    今天(6月20日),素有冰城美誉的哈尔滨本应于上午九点开始互联网机动车选号,不料遭黑客攻击,导致系统崩溃.为了防止大量号牌流入非法渠道,哈尔滨市公安交通警察支队接到上级机关通知决定暂缓开通互联网选号系 ...

  2. SSM SpringBoot vue限房摇号系统

    SSM SpringBoot vue限房摇号系统 SSM限房摇号系统功能介绍 首页 房源信息 我的收藏 登录注册 个人中心 后台管理 登录注册 个人中心 户型信息管理 面积信息管理 地段信息管理 房企 ...

  3. WZOI-301车牌摇号系统

    题目描述: 汽车数量的急剧增加,导致城市交通的压力越来越大,许多大城市采取通过摇号方式来发放汽车车牌.在申请人通过资格审核后,车牌摇号系统反馈回一个唯一的编号.每次摇号前,车牌摇号系统需要收集所有本次 ...

  4. 抽奖摇号系统随机性算法介绍

    参考视频教程:    **高并发高性能 Go语言开发企业级抽奖项目  ** 摘要 ===== 本文分析GO语言包中的"crypto/rand"和"math/rand&qu ...

  5. 摇号系统 - 【python】

    摇号系统 需求 需要一个摇号系统 40人摇摊位 人员确定 其中部分人员需要了多个摊位 摊位号按照顺序排列显示 比如说张三需要一个摊位,李四需要两个,王五需要一个. 第一次摇出来王五,屏幕显示" ...

  6. 北京摇号系统服务器,支付宝“城市服务”平台可查询北京小客车摇号结果

    支付宝"城市服务"平台可查询北京小客车摇号结果 [TechWeb报道]9月7日消息,北京市交通委与支付宝达成合作,市内交通出行服务将登陆城市服务平台.市民在手机上进入支付宝&quo ...

  7. 简易摇号器——学习WindowsPhone上的Timer

    C#中有三种常用的Timer,分别是 1.System.Windows.Forms.Timer 2.System.Threading.Timer 3.System.Timers.Timer 而在Win ...

  8. 微信小程序开发——上课摇号系统的开发

    最终效果如下: wxml函数如下: wxss代码如下: click1函数如下:

  9. java摇号_java语言实现一个摇号系统,但是可以内部设定中奖名单这个怎么实现?...

    展开全部 1.简单控制台程序如下,如需界面需要自己加个. package zhidao; import java.util.HashSet; import java.util.Random; impo ...

最新文章

  1. nginx开发从入门到精通 http://tengine.taobao.org/book/
  2. 搭建自己的Docker Harbor
  3. 南师大计算机语言学,南师大(语言学,文字学,文献学专业备考建议)
  4. java ibm 2035,C# java 连接 IBM MQ时出现 2035 或 2013认证错误的解决方法
  5. java第一次课必修实验答案,Java第一次实验报告
  6. Python+tkinter实现文件拖放功能
  7. Ubuntu下qt5无法输入中文
  8. Nginx开启gzip压缩功能
  9. 【iCore3 双核心板】例程三十六:DAC实验——输出直流电压
  10. 档案管理制度计算机管理制度,档案管理制度保密制度
  11. java游戏局域网实现的_java学习笔记: 实现简易局域网聊天程序
  12. 微计算机的工作原理,一文看懂微流控芯片的工作原理
  13. 北京最最最牛的IT公司都在这了
  14. Echarts 修改地图的标示
  15. ipa文件上传到iTunes Connect
  16. 如何选择最好的研究方法?——Nvivo教程
  17. 用Java语言定义一个整数定义的数组,求奇数个数和偶数个数。
  18. 架狗屎:聊一聊 Spring Boot 服务监控机制
  19. python写xml多了ns0_python – SUDS生成的XML不正确
  20. 【文献阅读笔记】KAM Theory Meets Statistical Learning Theory: Hamiltonian Neural Networks with Non-Zero Trai

热门文章

  1. 将闲置电脑搭建成私有云盘,使用ipv6外网使用
  2. FileProvider
  3. provide inject
  4. 什么是闭包,对闭包的理解,闭包的用途及优缺点
  5. PIC单片机-PWM波
  6. 错误解决:IllegalArgumentException occurred calling getter of *
  7. latex中插入两张子图片
  8. 【Java】动态代理原理分析
  9. 【车辆计数】基于光流法实现车辆检测计数matlab 源码
  10. mysql 1146 错误处理