ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:261.93KB ,
资源ID:24476666      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24476666.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第3章Windows窗体常用控件.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第3章Windows窗体常用控件.docx

1、第3章 Windows窗体常用控件【例3-1】创建一个简单的Windows应用程序,输入圆的半径,求圆的面积,整个案例的完整运行结果如图3-1所示。这里创建其中的标签部分。图3-1 求圆面积案例的运行结果分析:根据题意要求,该窗体界面中应当添加2个标签控件,用于提示用户将要输入的半径和将要求出并显示的面积。据此作如下设计:(1)在窗体上添加2个标签控件。(2)按表3-1所示设置窗体及标签控件的属性。表3-1 例3-1的窗体及控件属性设置控件类别名称(Name属性)其它属性属 性 值窗体Form1Text求圆面积StartPositionCenterScreen标签Label1Text半径=标签

2、Label2Text面积=(3)调试运行,结果如图3-2所示。图3-2 例3-1运行结果【例3-2】接例3-1,继续完成求圆的面积的案例。参见图3-1,这里创建其中的文本框部分。分析:根据题意要求,该窗体界面中还应当添加2个文本框控件,用于接收用户将要输入的半径值和显示求出的面积值。据此接续例3-1作如下设计:(1)在窗体上添加2个文本框控件。(2)按表3-2所示设置控件的属性。表3-2 例3-2的控件属性设置控件类别名称(Name属性)其它属性属 性 值文本框TextBox1Text(空)TextBox 2Text(空)(3)调试运行,结果如图3-3所示。图3-3 例3-2运行结果【例3-3

3、】创建一个简单的Windows应用程序,使用标签显示文本框中正在输入的内容,运行结果如图3-4所示。图3-4 例3-3运行结果1界面设计创建Windows应用程序,在窗体Form1中创建两个标签Label1、Label2和一个文本框,按表3-3所示设置各控件属性。2编写程序代码分析:根据题意要求,当文本框中有输入信息时,标签Label2中的显示文本应发生变化,即跟随文本框中的信息而变。为此应对文本框TextBox1的TextChanged事件编程。具体如下:Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal

4、 e As System.EventArgs) Handles TextBox1.TextChangedLabel2.Text = TextBox1.TextEnd Sub表3-3 例3-3的控件属性设置控件类别名称(Name属性)其它属性属 性 值窗体Form1Text标签文本框的应用StartPositionCenterScreen标签Label1Text文本框正在输入的文字是:AutoSizeTrue标签Label2Text(空)AutoSizeTrue文本框TextBox1Text(空)【例3-4】接例3-2,继续完成求圆的面积的案例。参见图3-1,这里创建其中的按钮部分。分析:根据题

5、意要求,该窗体界面中还应当添加2个按钮控件,用于执行计算面积的操作和退出应用程序。据此接续例3-2作如下设计:(1)在窗体上添加2个按钮控件。(2)按表3-4所示设置控件的属性。表3-4 例3-4的控件属性设置控件类别名称(Name属性)其它属性属 性 值按钮Button1Text计算按钮Button2Text关闭(3)编写代码按钮控件的最主要功能就是通过单击操作实现某些动作,因此对按钮控件都应当处理其单击事件。这里根据题意,编写代码如下:Public Class Form1Const PI = 3.1415926Private Sub Button1_Click_1(ByVal sender

6、 As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickTextBox2.Text = (TextBox1.Text) 2 * PIEnd SubPrivate Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.ClickMe.Close()End SubEnd Class 提示:这里的Const PI = 3.1415926定义了常量PI。该常量定义在所有Sub过程之上,

7、其作用域为整个窗体。有关常量及作用域参见附录A。(4)调试运行,结果如图3-6所示。图3-6 例3-4运行结果【例3-5】设计选择课程序要求程序运行后,输入学生姓名并选择学历和选修课程。学历选择有“专科”和“本科”两项,可选课程包括“大学语文”、“军事理论”、“大学英语”、“信息技术”。当输入学生姓名并选择了学历和选修课程后,单击“确定”按钮,通过消息框显示所选信息。运行结果如图3-7所示。1界面设计按照表3-5所示设计窗体及各控件属性。图3-7例3-5选课程序运行结果表3-5 例3-5的控件属性设置控件类别名称(Name属性)其它属性属 性 值窗体FrmSelectText选课StartPo

8、sitionCenterScreen标签LblNameText姓名AutoSizeTrue文本框TextBox1Text(空)分组框GroupBox1Text学历GroupBox2Text选修课程单选按钮RadioButton1Text专科CheckedTrueRadioButton2Text本科复选框CheckBox1Text大学语文CheckBox2Text军事理论CheckBox3Text大学英语CheckBox4Text信息技术命令按钮ButOKText确定ButQuitText退出2代码设计这里主要处理的是两个按钮的Click事件,具体如下:Private Sub ButOK_Cli

9、ck(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButOK.ClickDim StrInfor As StringStrInfor = 姓名: & Trim(TxtName.Text)If RadioButton1.Checked ThenStrInfor = StrInfor & 学历: & RadioButton1.Text & vbCrLf & 所选课程:ElseStrInfor = StrInfor & 学历: & RadioButton2.Text & vbCrLf & 所选课程:End I

10、fIf CheckBox1.Checked ThenStrInfor = StrInfor + CheckBox1.Text + End IfIf CheckBox2.Checked ThenStrInfor = StrInfor + CheckBox2.Text + End IfIf CheckBox3.Checked ThenStrInfor = StrInfor + CheckBox3.Text + End IfIf CheckBox4.Checked ThenStrInfor = StrInfor + CheckBox4.Text + End IfMsgBox(StrInfor)End

11、 SubPrivate Sub ButQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButQuit.ClickMe.Close()End Sub【例3-6】本教材第10章综合案例中的“操作员登录”窗口是标签、文本框及命令按钮综合应用的典型例子,结果如图3-8所示。下面简述其创建过程。图3-8 操作员登录界面表3-6 控件属性设置控件类别名称(Name属性)其它属性属 性 值窗体FrmLoginText操作员登录StartPositionCenterScreen标签LblUIDText

12、操作员:标签LblUPWDText密 码:文本框TxtUIDText(空)文本框TxtUPWDPasswordChar*Text(空)按钮ButLoginText登录(&E)EnableFalse按钮ButQuitText退出(&Q)1设计操作员登录界面按照表3-6所示在窗体上创建各控件并设置相应的属性,其中包括两个标签、两个文本框和两个按钮。表中未列属性使用系统默认值。2编写事件过程代码这里要处理的事件共有五个,即文本框TxtUID(操作员)和TxtUPWD(密码)的KeyPress事件,文本框TxtUPWD的TxtUPWD_TextChanged事件,按钮ButLogin和ButQuit的

13、Click事件。(1)对于“操作员”文本框TxtUID,当用户按下Enter键时,应使光标下移到“密码”文本框,即使得文本框TxtUPWD获得焦点。具体编程如下:Private Sub TxtUID_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtUID.KeyPressIf Asc(e.KeyChar) = Windows.Forms.Keys.Enter ThenTxtUPWD.Focus()End IfEnd Sub 提示:这里的e.KeyChar

14、用于扫瞄键盘并接收用户按键。(2)初始时“登录”按钮的Enable 属性为False,按钮处于不可用状态,只有当有密码输入时才能登录。因此,对于“密码”文本框TxtUPWD,当有文字输入时,应使ButLogin按钮的Enable 属性变为True,即使其可用。具体编程如下:Private Sub TxtUPWD_TextChanged (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtUPWD. TextChanged()ButLogin.Enable=TrueEnd Sub(3)对于“密码”文本框T

15、xtUPWD,当用户按下Enter键时,应使光标移到“登录”按钮,即使得登录按钮ButLogin获得焦点。具体编程如下:Private Sub TxtUPWD_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtUPWD.KeyPressIf Asc(e.KeyChar) = Windows.Forms.Keys.Enter ThenButLogin.Focus()End IfEnd Sub(4)对于“登录”按钮ButLogin,当鼠标单击时,应检查操作员及

16、密码的输入情况,并作出相应处理。这里作为分解案例,处理方法与第10章案例并不完全一致。这里假设操作员为“admin”,密码为“123456”。具体编程如下:Private Sub ButLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButLogin.ClickIf TxtUID.Text = ThenMessageBox.Show(请输入操作员!, 操作员为空错误, MessageBoxButtons.OK, MessageBoxIcon.Error)TxtUID.Focus()E

17、xit SubEnd IfIf TxtUPWD.Text = ThenMessageBox.Show(请密码输入!, 密码为空错误, MessageBoxButtons.OK, MessageBoxIcon.Error)TxtUPWD.Focus()Exit SubEnd IfIf TxtUID.Text = admin And TxtUPWD.Text = 123456 ThenMessageBox.Show(欢迎使用学生管理系统!, 欢迎, MessageBoxButtons.OK)ElseMessageBox.Show(非法操作员或密码错误!, 登录失败, MessageBoxButto

18、ns.OK, MessageBoxIcon.Information)TxtUID.Focus()Exit SubEnd IfEnd Sub(5)对于“退出”按钮ButQuit,当鼠标单击时,应退出整个系统。这里作为分解案例,只作了关闭窗体的处理,综合案例中的处理方法请见第10章。具体编程如下:Private Sub ButQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButQuit.ClickMe.Close()End Sub【例3-7】本教材第10章案例中,增加操作员模块中使用了一

19、个分组框控件GroupBox1和两个单选按钮RadioButton1和RadioButton2,用于设置新增加的操作员的权限,如图3-9所示。其各属性设置如表3-7所示。图3-9 增加操作员界面表3-7 案例控件的属性设置控件类别名称(Name属性)其它属性属 性 值分组框GroupBox1Text权限设置单选按钮RadioButton1Text普通用户CheckedTrue单选按钮RadioButton2Text超级用户CheckedFalse该案例假定1为普通用户,2为超级用户。也就是说,当RadioButton1被选中,即其Checked属性值为真时,能够获取值1,否则获取值2。作为分解

20、案例,这里仅给出了“添加”按钮的Click事件代码,并且为了测试方便,其处理方法不同于案例。Private Sub ButAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButAdd.ClickIf IIf(RadioButtonl.Checked = True,1,2) = 1 ThenMessageBox.Show(您的权限为普通用户, 权限设置, MessageBoxButtons.OK, MessageBoxIcon.Information)ElseMessageBox.Show

21、(您的权限为超级用户, 权限设置, MessageBoxButtons.OK, MessageBoxIcon.Information)End IfEnd Sub【例3-8】本教材第10章案例中,学生档案录入模块是列表类控件应用的典型案例,其中使用了多个组合框控件,用于提供给用户选择“性别”、“民族”和“出生年月日”,如图3-14所示。其部分属性设置如表3-8所示。图3-14 档案录入模块界面运行结果表3-8 档案录入模块窗体中与组合框控件相关的控件的属性设置控件类别名称(Name属性)其它属性属 性 值窗体FrmDaAddText档案录入标签LblSexText性别标签LblNationTex

22、t民族标签LblYearText年标签LblMonthText月标签LblDateText日组合框CombSex-CombDate(共6个)Items(空)按钮ButSaveText保存(&S)按钮ButRetText返回(&R)分析:初始时,各组合框控件的Items属性均为空,而一旦窗体调入,应将其正确填充以供用户选择。(1)对于“民族”组合框,应将56个民族的值填充到对应控件的Items属性集中,案例中使用了数据源中的数据表,故这里暂省略,不作处理。(2)对于“年”组合框,应根据具体情况将适当的年份填充到对应控件的Items属性集中。这里填充的是1940-2000,使用循环结构来实现。(3

23、)对于“月”组合框,应将1-12填充到对应控件的Items属性集中。同样,对于“日”组合框,应将1-31填充到Items属性集中,这里使用循环结构来实现。(4)由于不同月份对应的天数不同,所以当所选择的月份发生变化时,应重新填充日期下拉框。这里使用选择结构来实现。 提示:有关选择结构和循环结构的相关知识请参见附录A。根据以上分析,应处理窗体FrmDaAdd的Load事件和组合框CombMonth的SelectedIndexChanged事件。涉及到的部分代码如下:Private Sub FrmDaAdd_Load(ByVal sender As System.Object, ByVal e A

24、s System.EventArgs) Handles MyBase.Load填充性别组合框CombSex.Items.Add(男)CombSex.Items.Add(女)填充出生年月日组合框For i = 2000 To 1940 Step -1CombYear.Items.Add(i)NextCombYear.Text = Year(Now) - 18For i = 1 To 12CombMonth.Items.Add(i)NextCombMonth.Text = 1For i = 1 To 31CombDate.Items.Add(i)NextCombDate.Text = 1End S

25、ubPrivate Sub CombMonth_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CombMonth.SelectedIndexChanged当月份变化时重新填充日期Dim i As IntegerCombDate.Items.Clear()Select Case CombMonth.TextCase Is = 1, 3, 5, 7, 8, 10, 12For i = 1 To 31CombDate.Items.Add(i)NextCase Is =

26、4, 6, 9, 11For i = 1 To 30CombDate.Items.Add(i)NextCase Is = 2If DateTime.IsLeapYear(CombYear.Text) ThenFor i = 1 To 29CombDate.Items.Add(i)NextElseFor i = 1 To 28CombDate.Items.Add(i)NextEnd IfEnd SelectCombDate.SelectedIndex = 0End Sub 提示:DateTime.IsLeapYear( )是DateTime类中的函数,用于判断某一年份是否为闰年,若是则返回Tru

27、e,否则返回False。【例3-9】在窗体上建立4个图形框,当鼠标指针移动到图形框上方时图片显示,当鼠标指针离开图形框时图片隐藏,用户界面如图3-15所示。图3-15 图形框控件的应用操作步骤:(1)设计用户界面:在窗体上创建4个图形框控件,并分别设置属性SizeMode为True。(2)在属性窗口中为每个控件的Image属性导入适当的图形文件,结果如图3-15所示。(3)编写程序代码这里通过对窗体的MouseLeave事件及各个图形框控件的MouseMove事件编程,去除Image属性的图片文件或调入图形文件,以达到移除或显示图形的目的,具体如下:Public Class Form1Priv

28、ate Sub Form1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseLeavePictureBox1.Image = NothingPictureBox2.Image = NothingPictureBox3.Image = NothingPictureBox4.Image = NothingEnd SubPrivate Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Fo

29、rms.MouseEventArgs) Handles PictureBox1.MouseMovePictureBox1.Image = Drawing.Image.FromFile(E:imagebutterfly4.jpg)End SubPrivate Sub PictureBox2_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox2.MouseMovePictureBox2.Image = Drawing.Image.FromFile(E:imagebutterfly5.jpg)End SubPrivate Sub PictureBox3_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseMovePictureBox3.Image = Drawing.Image.FromFile(E:imagebutterfly6.jpg

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1