实验四 Windows程序设计

1,创建Windows窗体应用程序,实现用户登录功能,当输入正确与错误时均给出相应的提示信息,规定用户输入错误次数不能超过3次。(源代码+运行界面)

在这里插入图片描述
这里的口令有个小常识,就是显示*,在口令对应的textBox2--->行为--->PasswordChar 改成 * 即可

所需控件:groupBox1、label1、label2、TextBox1、TextBox2、button1、button2

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;namespace text4
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private static int count = 0;private void button1_Click(object sender, EventArgs e){if ((textBox1.Text == "beyondyanyu")&& (textBox2.Text == "123")){             MessageBox.Show("欢迎beyondyanyu,登录成功!!!","登录成功",MessageBoxButtons.OK);               }else {count++;MessageBox.Show("用户名或口令不正确(您一共有3次机会)", "Exclamation", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);if (count == 3) {MessageBox.Show("抱歉您次数已用完", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);}}}private void button2_Click(object sender, EventArgs e){System.Environment.Exit(0);//这是最彻底的退出方式,不管什么线程都被强制退出,把程序结束的很干净。 }}
}

效果图如下:
运行效果图
提示信息
异常
3次都错误

2,创建Windows窗体应用程序,界面如下所示,当在组合框中输入一个新项时自动添加到组合框中,并给出相应提示;当输入一个已存在项时给出相应提示。(源代码+运行界面)

在这里插入图片描述在这里插入图片描述
这里需要更改触发按键 comboBox1--->键--->KeyPress 或 KeyDown 我这里用了两种方法选一种即可

所需控件:label1、label2、comboBox1

在这里插入图片描述

using System;
using System.Windows.Forms;namespace text4_2
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){comboBox1.Items.Add("安阳");comboBox1.Items.Add("成都");}private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){MessageBox.Show("您选择的城市是:" + comboBox1.Text, "提示");}private void comboBox1_KeyPress(object sender, KeyPressEventArgs e){/*if (e.KeyChar == 13){if (comboBox1.Items.Contains(comboBox1.Text)){label2.Text = "你的输入已在组合框!";}else{comboBox1.Items.Add(comboBox1.Text);label2.Text = "你的输入项已添加到组合框中!";}}*/}private void comboBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e){if (e.KeyData.Equals(System.Windows.Forms.Keys.Enter)){if (e.KeyCode == Keys.Enter){if (comboBox1.Items.Contains(comboBox1.Text)){label2.Text = "你的输入已在组合框!";}else{comboBox1.Items.Add(comboBox1.Text);label2.Text = "你的输入项已添加到组合框中!";}}}}}}

效果图如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3,创建Windows窗体应用程序,用一个学生结构数组存放10名学生的记录,然后根据用户指定的学号显示相应的学生记录,具体界面如下所示。(源代码+运行界面)

在这里插入图片描述

所需控件:groupBox1、groupBox2、label1、label2、label3、label4、label5、TextBox1、TextBox2、TextBox3、TextBox4、TextBox5、button1、comboBox1

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;namespace text4_3
{public partial class Form1 : Form{struct Scores{public int unum;public string name;public string sex;public int cnum;public string birthday;}Scores[] yy = new Scores[10];public Form1(){InitializeComponent();comboBox1.Items.Add("1");comboBox1.Items.Add("2");comboBox1.Items.Add("3");comboBox1.Items.Add("4");comboBox1.Items.Add("5");comboBox1.Items.Add("6");comboBox1.Items.Add("7");comboBox1.Items.Add("8");comboBox1.Items.Add("9");comboBox1.Items.Add("10");}private void Form1_Load(object sender, EventArgs e){}private void button1_Click(object sender, EventArgs e){Scores y1, y2, y3, y4, y5, y6, y7, y8, y9, y10;y1.unum = 1; y1.name = "喜羊羊"; y1.sex = "男"; y1.cnum = 5118; y1.birthday = "1999/7/5";y2.unum = 2; y2.name = "美羊羊"; y2.sex = "女"; y2.cnum = 777; y2.birthday = "1992/9/5";y3.unum = 3; y3.name = "暖洋洋"; y3.sex = "女"; y3.cnum = 515; y3.birthday = "1998/12/1";y4.unum = 4; y4.name = "沸羊羊"; y4.sex = "男"; y4.cnum = 788; y4.birthday = "1999/9/21";y5.unum = 5; y5.name = "懒羊羊"; y5.sex = "男"; y5.cnum = 4118; y5.birthday = "1999/10/15";y6.unum = 6; y6.name = "壮羊羊"; y6.sex = "男"; y6.cnum = 818; y6.birthday = "1998/10/14";y7.unum = 7; y7.name = "灰太狼"; y7.sex = "男"; y7.cnum = 7118; y7.birthday = "1994/1/25";y8.unum = 8; y8.name = "村长"; y8.sex = "男"; y8.cnum = 5748; y8.birthday = "1989/11/7";y9.unum = 9; y9.name = "小灰灰"; y9.sex = "男"; y9.cnum = 787; y9.birthday = "2020/4/3";y10.unum = 10; y10.name = "红太狼"; y10.sex = "女"; y10.cnum = 74185; y10.birthday = "1999/7/18";int a = int.Parse(comboBox1.SelectedItem.ToString());if (a == 1){textBox1.Text = y1.unum.ToString();textBox2.Text = y1.name;textBox3.Text = y1.sex;textBox4.Text = y1.cnum.ToString();textBox5.Text = y1.birthday;}else if (a == 2){textBox1.Text = y2.unum.ToString();textBox2.Text = y2.name;textBox3.Text = y2.sex;textBox4.Text = y2.cnum.ToString();textBox5.Text = y2.birthday;}else if (a == 3){textBox1.Text = y3.unum.ToString();textBox2.Text = y3.name;textBox3.Text = y3.sex;textBox4.Text = y3.cnum.ToString();textBox5.Text = y3.birthday;}else if (a == 4){textBox1.Text = y4.unum.ToString();textBox2.Text = y4.name;textBox3.Text = y4.sex;textBox4.Text = y4.cnum.ToString();textBox5.Text = y4.birthday;}else if (a == 5){textBox1.Text = y5.unum.ToString();textBox2.Text = y5.name;textBox3.Text = y5.sex;textBox4.Text = y5.cnum.ToString();textBox5.Text = y5.birthday;}else if (a == 6){textBox1.Text = y6.unum.ToString();textBox2.Text = y6.name;textBox3.Text = y6.sex;textBox4.Text = y6.cnum.ToString();textBox5.Text = y6.birthday;}else if (a == 7){textBox1.Text = y7.unum.ToString();textBox2.Text = y7.name;textBox3.Text = y7.sex;textBox4.Text = y7.cnum.ToString();textBox5.Text = y7.birthday;}else if (a == 8){textBox1.Text = y8.unum.ToString();textBox2.Text = y8.name;textBox3.Text = y8.sex;textBox4.Text = y8.cnum.ToString();textBox5.Text = y8.birthday;}else if (a == 9){textBox1.Text = y9.unum.ToString();textBox2.Text = y9.name;textBox3.Text = y9.sex;textBox4.Text = y9.cnum.ToString();textBox5.Text = y9.birthday;}else if (a == 10){textBox1.Text = y10.unum.ToString();textBox2.Text = y10.name;textBox3.Text = y10.sex;textBox4.Text = y10.cnum.ToString();textBox5.Text = y10.birthday;}}}
}

效果图如下:
学号1
学号8

4,创建一个项目,设计一个窗体Form1,其中包含一个TreeView控件treeView1和一个ListView控件listView1,单击treeView1控件中的某结点时,在listView1中显示所有子结点,并通过弹出式菜单选择listView1控件的大图标、小图标、列表和完整图标4种视图显示模式。如下图所示:(源代码+运行界面)

在这里插入图片描述

所需控件:treeView1、imageList1、imageList2、listView1、contextMenuStrip1

这里在imageList1和imageList2里面需要手动添加对应小动物图片,可根据之间需要上传,前面的index对应下面代码中的listView1.Items.Add("小猫",0);这个0 如:imageList1--->外观--->Images 选择上传图片即可

在Form1属性中找ContextMenuStrip---->设置为contextMenuStrip1 也就是绑定弹出式菜单
在ContextMenuStrip--->右击编辑项--->添加你要添加的状态(我添加的是大图标、小图标、详细信息)会对应生成toolStripMenuItem1--->然后分别找到toolStripMenuItem1的属性中Click进行绑定事件(例如代码下方的small_Clike方法)

using System;
using System.Windows.Forms;namespace text4_4
{public partial class Form1 : Form{ColumnHeader h1 = new ColumnHeader();//详细信息的时候需要显示上面的列 第一列public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){h1.Text = "你瞅这是啥小动物?";listView1.Columns.Add(h1);treeView1.Nodes.Add("哺乳动物");treeView1.Nodes.Add("鱼类");treeView1.Nodes.Add("鸟类");treeView1.Nodes[0].Nodes.Add("小猫");treeView1.Nodes[0].Nodes.Add("小猪");treeView1.Nodes[0].Nodes.Add("小狗");treeView1.Nodes[1].Nodes.Add("鲨鱼");treeView1.Nodes[1].Nodes.Add("热带鱼");treeView1.Nodes[1].Nodes.Add("金鱼");treeView1.Nodes[2].Nodes.Add("小鸟");treeView1.Nodes[2].Nodes.Add("中鸟");treeView1.Nodes[2].Nodes.Add("大鸟");}private void treeView1_AfterSelect(object sender, TreeViewEventArgs e){//listView1.Items.Clear();listView1.LargeImageList = imageList1;//大图标listView1.SmallImageList = imageList2;//小图标string s = e.Node.Text;switch (s){case "哺乳动物":listView1.Items.Clear();listView1.Items.Add("小猫", 0);listView1.Items.Add("小狗", 1);listView1.Items.Add("小猪", 2);break;case "鱼类"://鱼类图片我就不加了,手边图片不多,拿哺乳动物为例就行listView1.Items.Clear();listView1.Items.Add("鲨鱼");listView1.Items.Add("热带鱼");listView1.Items.Add("金鱼");break;case "鸟类":listView1.Items.Clear();listView1.Items.Add("小鸟");listView1.Items.Add("中鸟");listView1.Items.Add("大鸟");break;case "小猫":listView1.Items.Clear();listView1.Items.Add("小猫", 0);break;case "小狗":listView1.Items.Clear();listView1.Items.Add("小狗", 1);break;case "小猪":listView1.Items.Clear();listView1.Items.Add("小猪", 2);break;case "鲨鱼":listView1.Items.Clear();listView1.Items.Add("鲨鱼");break;case "热带鱼":listView1.Items.Clear();listView1.Items.Add("热带鱼");break;case "小鸟":listView1.Items.Clear();listView1.Items.Add("小鸟");break;case "中鸟":listView1.Items.Clear();listView1.Items.Add("中鸟");break;case "大鸟":listView1.Items.Clear();listView1.Items.Add("大鸟");break;}}private void listView1_SelectedIndexChanged(object sender, EventArgs e){}private void listView1_ContextMenuStripChanged(object sender, EventArgs e){}private void contextMenuStrip1_Opening(object sender, System.ComponentModel.CancelEventArgs e){}private void small_Clike(object sender,EventArgs e)//小图标,需要和toolStripMenuItem1的Click事件绑定{listView1.View = View.SmallIcon;}private void big_Clike(object sender, EventArgs e)//大图标,需要和toolStripMenuItem2的Click事件绑定{listView1.View = View.LargeIcon;}private void all_Clike(object sender, EventArgs e)//详细信息,需要和toolStripMenuItem3的Click事件绑定{listView1.View = View.Details;}}
}

效果图如下:
右击即可选择弹出式菜单,这里我只写了3种(大图标、小图标、详细信息)
大图标
小图标
详细信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379141.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最小连通-(代码、分析、汇编)

目录:介绍:代码:分析:汇编:介绍: 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点, 并且有保持图连通的最少的边。 最小生成树可以用kruskal&am…

c++ 怎样连接两个链表_LeetCode | 链表的入口,一文帮你搞定“环形链表”(python版,最简单解析)...

链表节点的定义链表作为一种数据结构,由链表节点互相连接构成。链表节点包含自身的数据和一个指向下一节点的指针。""" Definition of ListNode """ class ListNode(object):def __init__(self, val, nextNone):self.val valself.ne…

QI实例-改变空间参考

学习AE一段时间了,总是对QI不是很理解,今天一晚上写了QI实例,尝试理解下。 首先想到的是→改变空间参考→alter、SpatialReference→alterSpatialReference,输入到帮助文档里。  查看是IGeoDatasetSchemaEdit接口的方法&#xf…

C#省市二级联动(王者荣耀挑选英雄为例)

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;namespace beyond_联动_ {public partial clas…

二叉排序树(Binary Sort Tree) 又称为二叉查找树(Binary Search Tree) - (代码、分析)

目录:代码:分析:代码: BSTree.h #ifndef _BSTREE_H_ #define _BSTREE_H_typedef void BSTree;//定义二叉树类型 typedef void BSKey;//定义节点的键值类型(用于节点排序)typedef struct _tag_BSTreeNode …

springboot tomcat默认线程数_记一次JAVA线程池的错误用法

最近项目一个项目要结项了,但客户要求 TPS 能达到上千,而用我写的代码再怎么弄成只能达到 30 的 TPS,然后我又将代码中能缓存的都缓存了,能拆分的也都拆分了,拆分时用的线程池来实现的;其实现的代码主要为…

引以为鉴-ARM开发板连线注意事项

前些日子把实验室的三台机子放到一个工位上,非常拥挤,做实验也很不方便。因此,想把ARM开发板的环境重新搭建到自己的电脑上。说完就做,上午就开始忙活起来。把开发板上的USB线、串口线、JTAT接口、还有电源线一一插好。接着就开始…

Python---实验八

1,现在有一份‘邀请函.txt’的空白文件,请在同级目录下编写一段代码,写入内容‘诚挚邀请您来参加本次宴会’。 with open(fG:\study\Python\邀请函.txt,modew,encodingutf-8) as y:y.write(诚挚邀请您来参加本次宴会)效果图如下:…

哈希表 - (代码、分析 )

目录:代码:分析:代码: BSTree.h BSTree.c 二叉排序树(Binary Sort Tree) 又称为二叉查找树(Binary Search Tree) Hash.h #ifndef _HASH_H_ #define _HASH_H_typedef void Hash;//定义哈希表类型 typedef void HashKey;//定义哈…

scala spark 数据对比_IT大牛耗时三个月总结出大数据领域学习路线,网友评论:炸锅了...

大数据不是某个专业或一门编程语言,实际上它是一系列技术的组合运用。有人通过下方的等式给出了大数据的定义。大数据 编程技巧 数据结构和算法 分析能力 数据库技能 数学 机器学习 NLP OS 密码学 并行编程虽然这个等式看起来很长,需要学习的东…

Python---实验九作业

1,使用tkinter实现计算器程序。实现效果如下: from tkinter import * from tkinter.ttk import *def frame(master):"""将共同的属性作为默认值, 以简化Frame创建过程"""w Frame(master)w.pack(sideTOP, expandYES, fill…

用pv操作描述如下前驱图_LinkedList实现分析(二)——常用操作

上一篇文章LinkedList实现分析(一)——LinkedList初探与对象创建介绍了LinkedList中的一些重要属性和构造方法,下面我们将详细介绍一下LinkedList提高的常用方法的实现原理元素添加###add(E e)方法往LinkedList添加元素,LinkedList提供了多重方式&#x…

C++多重继承与虚基类及与.NET的比较

多重继承前面我们介绍的派生类只有一个基类,称为单基派生或单一继承。在实际运用中,我们经常需要派生类同时具有多个基类,这种方法称为多基派生或多重继承。2.1 多重继承的声明:在 C 中,声明具有两个以上基类的派生类与…

平院实训门禁系统导入

这是我的配置(如果是Win10最好每一步都管理员身份运行) win7 SQLServer2008 VS2012 切记:注意:当你SQLserver创建数据库和VS连接数据库的时候得用同一种方式,要么都用window(主机名)&#xff0…

北京中信银行总行地址_中信银行拉萨分行举行“存款保险标识”启用和存款保险条例宣传活动...

11月NOV中信银行拉萨分行举行“存款保险标识”启用和《存款保险条例》宣传活动揭牌启用仪式111月Jul根据人民银行和总行关于“存款保险标识”启用工作相关要求,分行行领导高度重视“存款保险标识”启用和《存款保险条例》宣传活动工作,按照统一工作部署、…

转整型_156.Ruby烘焙大理石豆沙吐司解锁大理石花纹整型

好看又好吃的大理石豆沙面包。红豆馅均匀分布在松软细腻的面包体里,手撕着吃,一层层的甜美与温柔~关于吐司面包,我公众号里写过白吐司(基础款牛奶吐司,超绵鲜奶油吐司)和全麦吐司(基础款50%全麦吐司,经典燕…

VS2010 快捷键 (空格显示 绿点, Tab 显示箭头)

VS2010 有用的快捷键 : Ctrl r, ctrl w, 切换空格示。 转载于:https://www.cnblogs.com/fengye87626/archive/2012/11/21/2780716.html

分析一下mp4格式的trak -> mdia -> minf -> stbl -> stts、stsc 这两个box信息

分析一下mp4格式的trak -> mdia -> minf -> stbl -> stts、stsc 这两个box信息 (因为这两个box在音频trak和视频trak 下都有的,而且都有一个数组的值是比较绕的) 目录:stts:记录时间戳的,每个s…

Python---爬虫案例

例1、爬取公众号文章中的图片。 1,首先打开要获取公众号文章的地址 2,按下F12,再按Ctrl Shift C,然后鼠标移动到图片位置,然后观察控制台中显示图片对应的代码位置 3,分析该位置的代码段 代码段如下&…

Python---实验九

1、使用标准库urllib爬取“http://news.pdsu.edu.cn/info/1005/31269.htm”平顶山学院新闻网上的图片,要求:保存到F盘pic目录中,文件名称命名规则为“本人姓名” “_图片编号”,如姓名为张三的第一张图片命名为“张三_1.jpg”。 from re imp…