2C#设计由按钮类控件实现的功能窗体实验
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for (int m = 0; m < arrNum.Length; m++) for (int n = m + 1; n < arrNum.Length; n++) { if (arrNum[m] == arrNum[n]) goto redo; }
return arrNum; }
public int getNum(int[] arrNum,int tmp,int minValue,int maxValue,Random ra) {
public int[] getRandomNum(int num, int minValue, int maxValue) {
Random ra = new Random(unchecked((int)DateTime.Now.Ticks));
int[] arrNum = new int[num];
表 1-1 控件属性设置
组件 Form1 groupBox1 radioButton1 radioButton1 radioButton1 button1
属性 Text Text Text Text Text Text
属性值 按钮控件练习 海鲜 龙虾(&L) 青蟹(&C) 鲍鱼(&A) 提交(&R)
redo: int tmp = 0;
for (int i = 0; i <= num - 1; i++) {
tmp = ra.Next(minValue, maxValue); arrNum[i] = getNum(arrNum, tmp, minValue, maxValue, ra);
}
//下面的for也是循环用来判断是否有重复的数没有! //如果没有这几句在要产生数太多时有重复的! //比如你从到中产生个以上的不重复随机数是有重复的!
//Random ra=new Random(unchecked((int)DateTime.Now.Ticks));
for(int n=0;n<=arrNum.Length-1;n++)
{
if (arrNum[n]==tmp)
{
tmp=ra.Next(minValue,maxValue);
getNum(arrNum,tmp,minValue,maxValue,ra);
//声明一个数组一会用来接收返回的随机数a=getRandomNum(4,1,10);//从-10中产生个不一样的数装入数组a中
实验 01 设计由按钮类控件实现的功能窗体
【实验目的】 熟悉 C#中按钮型控件的使用,锻炼代码编写。 【实验要求】 按要求设计一个窗体,并实现其功能。 【示范模仿】 实验 1.1 设计一个点菜窗口,用户只能在“龙虾、青蟹、鲍鱼”中选择一项,对佐料“酱 油、芥末、醋”任意选择哪些项,提交后生成选择内容的文本。 (1) 进入 C#开发环境 单击 Windows 的【开始】菜单【所有程序】→【Microsoft Visual Studio 2005】→【Microsoft Visual Studio 2005】。 (2) 创建项目 单击“文件”菜单下的“新建”菜单项中的“项目”子菜单项,在“新建项目”对话框 中选择“Windows 应用程序”项,设置合适的名称和位置(文件所在的路径、文件夹),单 击“确定”按钮。这时 C#创建了一个项目和一个窗体单元文件,我们直接对窗体设置大小 和字体等属性。 (3) 添加控件 首先往窗体中添加 1 个 textBox 控件 textBox1、2 个 groupBox 控件 groupBox1~groupBox2 和 2 个 button 控件 button1~button2,在 groupBox1 中添加 3 个 radioButton 控件 radioButton1~ radioButton3,再在 groupBox2 中加 3 个 checkBox 控件 checkBox1~checkBox3。 (4) 设置控件属性 控件属性设置如表 1-1 所示。
图 1-4 简易计算器
图 1-5 实验 1.5 运行效果
实验 1.5 用窗体方式设计一个摇号器,输入一个整数 n,代表摇号范围,输入一个整数
m(m<n),代表摇出 m 个不重复的随机数。
要求:每次摇号得出不同的结果,随机数出现概率均衡,窗体随摇出数量多少而自动改
变大小,如图 1-4 所示。
提示:随机数函数:
}
为按钮 button2 添加 Click 事件,响应程序为 button2_Click,button2_Click 过程用来关 闭窗体,其代码如下:
private void button2_Click_1(object sender, EventArgs e) {
Close(); }
(6) 保存程序 将窗体文件保存为“Form01_ex1.cs”,将主文件保存为“Program01_ex1.cs”。 (7) 运行程序 单击工具栏中【>】按钮或按 F5 键运行程序。运行后,分别在单选按钮和复选框中输 入数据,单击【提交】按钮,窗体将按选择的内容显示在文本框中。
组件 textBox1 groupBox2 checkBox1 checkBox2 checkBox3 button2
属性 Text Text Text Text Text Text
属性值 [空串] 佐料 酱油(&S) 芥末(&M) 醋(&V) 关闭(&X)
设置完控件属性后,窗体中控件及其布局如图 1-1 所示。 (5) 添加并编写控件事件代码 为按钮 button1 添加 Click 事件,响应过程为 button1_Click;button1_Click 程序的作用 是按用户设置的 radioButton 和 checkBox 的值提交内容,从而让 textBox1 控件做出相应的显 示,其代码如下:
}
}
return tmp;
}
//以上函数getRandomNum随机产生不重复的数并返回一个数组,第一个参数是产生几个随机数,剩下的是随机数的范围!getNum 函数用来判断有重复的随机数,该函数是递归调用,直到没有重复递归结束!返回到getRandomNum函数继续生成下一个随机数! 如何用!int [] a;
if (checkBox1.Checked) { choice2 = "酱油"; flag = true; } if (checkBox2.Checked) { if (flag) choice2 = choice2 + "、" ; choice2 = choice2 + "芥末"; flag = true;} if (checkBox3.Checked) { if (flag) choice2 = choice2 + "、" ; choice2 = choice2 + "醋"; flag = true;}
if (choice1 == "") textBox1.Text = "你尚未点海鲜"; else textBox1.Text = "你选的海鲜是:" + choice1;
if (!flag) textBox1.Textபைடு நூலகம்=textBox1.Text+ " 你尚未点佐料"; else textBox1.Text = textBox1.Text+ " 你选的佐料是:" + choice2;
图 1-1 实验 1.1 的界面 图 1-2 实验 1.2 的界面 图 1-3 实验 1.3 界面 【学以致用】 实验 1.2 按图 1-2 设计窗体,当用户选择后,按【确定】按钮,将选择内容显示在 textBox 控件中,注意各控件上的快捷键。按【取消】按钮,将 textBox 控件内容清空。 【探索求新】 实验 1.3 设计一个表决器,表决器中有 6 个候选项(如北京、上海、深圳、广州、武汉、 南京),单选按钮有 1、2、3、4,当选择 3 时,只能选择 3 个候选城市,通过程序自动限制 复选框的选择数量,【提交】后将选择的城市显示在编辑框中,如图 1-3 所示。 【挑战新高】 实验 1.4 制作一个简易计算器,如图 1-4 所示。 要求:能用键盘和鼠标输入数据,选择运算符按钮和【=】按钮,可以计算四则运算。
private void button1_Click(object sender, EventArgs e) {
string choice1="",choice2=""; bool flag=false; if (radioButton1.Checked) choice1 = "龙虾"; else if (radioButton2.Checked) choice1 = "青蟹"; else if (radioButton3.Checked) choice1 = "鲍鱼";