首先我们来看一个简单的制作过程
打开visual 2010,新建窗体,既然是登录窗口,那么就不让它出现最大化、最小化以及拖拉大小功能(上一节已经提到过怎么设置大小),如图所示,甚至窗体的text属性值为“登录窗口”,大小随意。
创建窗体之后就开始界面详细的组件布局了,主要是在左边拖拉控件,然后放到窗体中去,定义属性值。这些都比较简单。
到了代码响应阶段,双击登录按钮,进入代码视图:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
private void button1_click( object sender, eventargs e) { string name = this .textbox1.text; // 获取里面的值 string password = this .textbox1.text; if (name.equals( "admin" ) && password.equals( "admin" )) // 判断账号密码是否等于admin { messagebox.show( "登录成功" ); } else { messagebox.show( "登录失败!" ); } } |
接下来,我们再来一个复杂一些的例子
要求:
1.用户名必须为字母。
1
2
3
4
5
6
7
8
9
10
11
12
|
//限定用户名必须为字母 private void txtname_keypress( object sender, keypresseventargs e) { if ((e.keychar >= 'a' && e.keychar <= 'z' ) || (e.keychar >= 'a' && e.keychar <= 'z' )) { e.handled = false ; } else { messagebox.show( "用户名只能为字母!" ); e.handled = true ; } } |
2.光标进入文本框时背景蓝色,文字白色;光标离开文本框时,背景白色,文字黑色。
界面:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
//光标进入文本框时,背景为蓝色,字体为白色; //光标离开文本框时,背景为白色,字体为黑色。 private void txtname_enter( object sender, eventargs e) { txtname.forecolor = color.white; txtname.backcolor = color.blue; } private void txtname_leave( object sender, eventargs e) { txtname.backcolor = color.white; txtname.forecolor = color.black; } |
3.当输入用户名“admin”和密码“123”之后,单击”确定“按钮,系统将弹出消息框以显示输入正确,否则显示用户名或密码错误的提示信息。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
private void btnlogin_click( object sender, eventargs e) { string username = txtname.text; string password = txtpwd.text; if (username == "admin" && password == "123" ) { messagebox.show( "欢迎进入个人理帐系统!" , "登陆成功!" , messageboxbuttons.ok, messageboxicon.information); } else { messagebox.show( "您输入的用户名或密码错误!" , "登录失败!" , messageboxbuttons.ok, messageboxicon.exclamation); } } |
4.单击”取消“按钮,清除输入信息,并将光标定位在txtname文本框中。
1
2
3
4
5
6
|
private void btncancel_click( object sender, eventargs e) { txtname.text = "" ; txtpwd.text = "" ; txtname.focus(); } |
5.最终界面:
小技巧:为label设置image属性,为了让图片完整显示出来,需要把label的autosize属性设置为false,然后适当拉大label大小。还要注意,imagealign属性设置为middleleft,textalign属性设置为middleright。
notice:
(1)ico:是windows的图标文件格式的一种,可以存储单个图案、多尺寸、多色板的图标文件。
(2)messagebox:消息框,显示一个模态对话框,其中包含一个系统图标、 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息。
(3)button的快捷键通过设置text属性为”取消(&c)“实现。
(4)此练习使用的软件为visual studio 2012,图形资源由vs提供,据说在vs的安装文件夹common7\imagelibrary中能找到,没有的话,可以到官网下载。