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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

第五章 基本控件的使用.docx

1、第五章 基本控件的使用第五章 基本控件的使用标签控件在Windows应用程序的各种对话框中,都显示有一些文本提示信息,在VB中可以使用标签控件来实现在窗体中显示这些文本提示信息。表5.1中列出了标签控件的一些主要属性。 既可以在程序设计阶段通过【属性】窗口设置标签的属性,也可以在程序运行阶段在代码中设置窗体的属性。如将标签(名称为Labell)显示的文本设置为欢迎的语句如下: Labell.Caption=欢迎 实例5.1标签的使用 在该程序中,窗体上显示一行提示用户执行操作的文本,当用户单击或双击窗体时,窗体上还会显示出用户所执行的操作。 在窗体上放置两个标签控件,它们的属性设置如表5.2所

2、示。打开【代码】窗口,将下列代码添加到Form_Click事件过程中:Private Sub Form_Click() Labl.Borderstyle=0 Labl.Caption=“您单击了窗体!”End Sub 当单击窗体时,则触发Form_Click事件,该事件中的第一行语句是设置标签无边框(BorderStyle属性的值为0),第二行语句是设置标签上显示的文本。 与此类似,将下列代码添加到Form_DblClick事件过程中:Private Sub Form_Click() Labl.Borderstyle=1 Labl.Caption=“您单击了窗体!”End Sub 运行该程序,

3、单击窗体,则窗体上显示您单击了窗体!,如图5.2所示。双击窗体,则窗体上显示您双击了窗体!,并且文本有一个边框,如图5.3所示:按钮控件在应用程序中,按钮控件常常被用来启动、中断或结束一个进程,用户可以通过简单的单击按钮来执行操作。只要用户单击按钮,就会触发它的Click事件过程,通过编写按钮的Click事件过程,就可以指定它的功能了。 按钮控件的常用属性如表5.3所示。按钮的有效性在某些应用程序界面中,按钮会根据用户的操作情况呈现两种不同的状态,一种是有效,一种是无效.在无效状态时,按钮通常以浅灰色显示,不能响应用户的任何操作。Windows系统自带的录音机程序界面,其中的【停止】与【后退】

4、按钮无效(以浅灰色显示).按下【播放】按钮后,【播放】按钮变为无效,而【停止】按钮变为有效。按下【停止】按钮后,【停止】按钮变为无效,【播放】按钮恢复有效。 通过按钮的有效性可以看出当前程序的状态,从而避免一些不需要的或重复的操作。如在录音机处于停止状态时(【停止】按钮无效),用户就不需要再去单击【停止】按钮来停止播放了。这里给出一个实例,来模拟录音机的停止与播放按钮。 实例5.2按钮的有效性 在窗体中放置一个标签控件和两个按钮控件,如图5.5所示,其中各控件的属性设置如表5.4所示。 注意:按钮控件添加到窗体上后,在默认情况下,它们的Enabled属性为Ture,在运行程序前,请在【属性】窗

5、口中确认两个按钮的Enabled属性均为Ture,以防止用户在操作中谋改变了这个属性。双击第一个按钮,打开【代码】窗口,将下列代码添加到ComPlay_Click事件过程中: Private Sub ComPlay_Click() Labell.Caption=正在播放歌曲 Complay.Enabled=False ComStop.Enabled=Ture End Sub 当用户单击【播放】按钮时,触发ComPlay_Click事件,该事件过程中的第一行代码是在标签中显示文本,第二行代码是将【播放】按钮变为无效,第三行代码是将【停止】按钮变为有效。 与此类似,将下列代码添加到Comstop_

6、Click事件过程中: Private Sub Comstop_Click() Labell.Caption=歌曲播放停止 ComPlay.Enabled=Fasle ComPlay.Enabled=Ture End Sub 运行该程序,单击【播放】按钮,则在标签中显示正在播放歌曲,并且【播放】按钮变为无效,如图5.6所示。单击【停止】按钮,则在标签中显示歌曲播放停止,【停止】按钮变为无效,同时,【播放】按钮又恢复有效,如图。5.7所示。多功能按钮通常,每个按钮都有一个固定的标题(Caption)和一个特定的功能,用户也可以设计出多功能按钮。单击这样的按钮,按钮的名称会发生变化,并且会执行与按

7、钮标题相应的操作。 实例5.3多功能按钮。 在该程序中,窗体上只有一个按钮,单击该按钮,按钮的标题会在显示日期与显示时间间切换,并且在窗体中将显示出与当前按钮标题相应的内容。 在窗体上放置一个标签控件和一个按钮控件,其中各对象的属性设置如表5.5所示。双击【显示日期】按钮,打开【代码】窗口,将下列代码添加到Commandl_Click事件过程中:Private Sub Command1_Click() If Commandl.Caption-“显示日期”Then Labell.Caption=Date Command1.Caption=“显示时间”Else Labell.Caption =Ti

8、me Command1.Caption=“显示日期” End ifEnd Sub 在该段代码中,使用了一个If语句来判断当前按钮的标题,然后做出相应的操作。 运行该程序,单击【显示日期】按钮,则在标签中显示当前的系统日期,并将按钮的标题改变为显示时间,如图5.9所示;再次单击按钮。则在标签中显示当前的系统时间,并且按钮的标题恢复为显示日期,如图5.10所示。这样,通过一个按钮就可以循环显示当前系统的时间与日期了。使用键盘操作按钮按钮控件的Click事件不仅可以由鼠标单击触发,还可以由以下几种方法触发: 按Tab键把焦点移到相应按钮上。然后按Space键或Enter键。 如果某按钮是窗体的缺省命

9、令按钮,既使将焦点移到其他控件上(非按钮控件),按下Enter键也会选中该按钮。在设计时,通过设置按钮的Default属性为True,就可指定它为窗体的缺省命令按钮。在一个窗体中只能有一个按钮为缺省命令按钮。 如果某按钮是窗体的缺省取消按钮,即使把焦点移到其他控件上,也能通过按Esc键选中该按钮。在设计时,通过设置某按钮的Cancel属性为True,就可指定它为窗体的缺省取消按钮。在一个窗体中只能有一个按钮为缺省取消按钮。 按按钮的访问键(Alt+带下划线的字母)可通过Caption属性创建命令按钮的访问键,为此,只需在作为访问键的字母前添加一个连字符(&).例如,要为标题为Print的按钮创

10、建访问键,应在字母P前添加连字符(&),于是得到&Print.运行时,字母P将带下划线,同时按AIt+P键就可选定命令按钮。 注意:如果不创建访问健,而又要使标题中包含连字符但不创建访问键,应添加两个连字符(&).这样一来,在标题中就只显示一个连字符而不显示下划线。 使用Enter键来执行某项操作和使用Esc键来取消某项操作是人们的操作习惯,因此,在设计程序时,最好设置窗体的缺省命令按钮和缺省取消按钮,来迎合人们的操作习惯。 实例5.4使用键盘操作按钮 在该程序中,用户可以使用Enter键,Esc键和访问键来选中按钮。若按Esc键,则退出程序。 在窗体中放置一个标签控件、一个文本框控件和两个按

11、钮控件,其中各对象的属性设置如表5.6所示。 双击【确定】按钮,打开【代码】窗口,将下列代码添加到ComOK_Click事件过程中:TexTime.Text =TimeEnd Sub将退出程序的end语句添加到ComEsces_Click事件过程中:Private Sub ComEsc_Click() End End Sub 运行该程序,单击【确定】按钮或按下Alt+O组合键都将在文本框中显示当前的时间。将焦点移动到文本框上,按下Enter键也可以在文本框中显示当前的时间。单击【取消】按钮、按下Esc键或按下Alt+E组合键将退出程序。图片按钮在Windows程序界面中,标准的按钮形式是立体的

12、长方形,在其上显示文本提示信息,表明按钮的功能。为了使用户界面更加生动,一些按钮上不是用文字,而是用图片来表明按钮的功能,如按钮的功能是保存,则在按钮上显示一个磁盘图片。 在VB中,如果将按钮控件的Style属性的值设置为1,就可以通过Picture属性来设置要在按钮上显示的图片,通过DownPicture属性设置按钮被按下时显示的图片,通过DisablePicture属性设置按钮无效时显示的图片。 实例5.5图片按钮。 在该程序中,按钮上显示有图片,形象地说明了该按钮的功能。并且,按钮上的图片还会根据用户的操作,做出相应的变化。 在窗体上放置一个标签控件和两个按钮控件,如图5.13所示,其中

13、各对象的属性设置如表5.7所示。提示:在安装VB时,如呆选择了安装图形选项,则在VB安装目录下的CommonGraphics目录将有大量的位图文件、元文件以及图标文件等。在需安各种图形或图标时,可以在那里找到。 双击第一个按钮控件,打开【代码】窗口,将下列代码添加到ComLight_Click事件过程中: Private Sub ComLight_Click() If ComLight.Caption=“关 灯” Then ComLight.Picture=LoadPicture(“d:Microsoft visual studi oCommonGraphicesTconsMiscLighto

14、n.ico“ ComFace.picture=Loadpicture(“d:Microsoft visual studi oCommonGraphicesTconsMiscFace04.ico“ ComLight.Caption=“开 灯”Else ComLiht.Picture=LoadPicture(“d:Microsoft visual studi oCommonGraphicesTconsMiscLightoff.ico“) ComFace.picture=Loadpicture(“d:Microsoft visual studi oCommonGraphicesTconsMiscFa

15、ce02.ico“) ComLight.Caption=“关 灯” End IfEnd Sub 【关灯】按钮是一个多功能按钮,与实例5.3一样,使用了If语句来判断按钮当前的标题。在程序运行时,设置对象的Picture属性的格式如下: 对象名Picture = LoadPicture(文件名) 注意:在程序运行时,不能直接将文件名赋予控件的Picture属性,而要使用LoadPicture()函数。 将下列代码添加到ComFace_Click事件过程中: Private Sub ComFace_Click() If ComLight.Caption=“关 灯” Then Labell.Capt

16、ion=“我 高 兴!”Else Labell.Caption=“我 生 气!” End IfEnd Sub 运行该程序,单击【关灯】按钮,则该按钮上的图片变成一个发亮的灯泡,提示文本也由关灯变成了开灯,且另一个按钮上的笑脸图片变成了哭脸图片。单击【哭脸】按钮,则在标签中显示我生气!,如图5.14所示。再次单击【开灯】按钮,则该按钮上的图片恢复为一个关灭的灯泡,提示文本开灯变成了关灯,且另一个按钮上的哭脸图片恢复为笑脸图片。单击【笑脸】按钮,则在标签中显示我高兴!,如图 5.15所示。文本框的基本属性在前面的一些实例中,己经接触过文本框的Text属性。该属性是文本框最重要的一个属性,在设计时,

17、使用该属性可以指定文本框的初始值。在程序中。Text属性用来返回用户在文本框中输入的内容。如要将用户在文本框(名称为Text1)中输入的内容显示在窗体上,可以使用以下语句: Print Textl.Text 表5.8列出了文本框的其他一些属性。 如果文本框的MultiLine属性的值设置为False,则这样的文本框称为单行文本框。在单行文本框中输入的内容均处于一行,即便是按Enter键也不能实现换行。超出文本框的内容不显示出来,可以将插入点置于文本框中,然后按方向键来查看未显示出的内容。 如果文本框的MultiLine属性的值设置为True,则这样的文本框称为多行文本框。对于多行文本框,如果S

18、crollBars属性使用默认值(值为0),则在文本框中输入内容时,当一行填满之后,就会自动转换到下一行,也可以按Enter键强制换行。将插入点置于文本框中,然后按方向键即可查看超出文本框中的内容。如果Scro1LBars属性的值不为0,则文本框中会出现滚动条,通过滚动条可以方便地查看超出文本框的内容。图5.16所示的是在几个MultiLiue属性和Scro1lBars属性设置不同的文本框中输入相同的内容后的情形,其中各文本框的MultiLine属性和ScrollBars属性的设置如表5.10所示。文本框的基本属性在前面的一些实例中,己经接触过文本框的Text属性。该属性是文本框最重要的一个属

19、性,在设计时,使用该属性可以指定文本框的初始值。在程序中。Text属性用来返回用户在文本框中输入的内容。如要将用户在文本框(名称为Text1)中输入的内容显示在窗体上,可以使用以下语句: Print Textl.Text 表5.8列出了文本框的其他一些属性。 如果文本框的MultiLine属性的值设置为False,则这样的文本框称为单行文本框。在单行文本框中输入的内容均处于一行,即便是按Enter键也不能实现换行。超出文本框的内容不显示出来,可以将插入点置于文本框中,然后按方向键来查看未显示出的内容。 如果文本框的MultiLine属性的值设置为True,则这样的文本框称为多行文本框。对于多行

20、文本框,如果ScrollBars属性使用默认值(值为0),则在文本框中输入内容时,当一行填满之后,就会自动转换到下一行,也可以按Enter键强制换行。将插入点置于文本框中,然后按方向键即可查看超出文本框中的内容。如果Scro1LBars属性的值不为0,则文本框中会出现滚动条,通过滚动条可以方便地查看超出文本框的内容。图5.16所示的是在几个MultiLiue属性和Scro1lBars属性设置不同的文本框中输入相同的内容后的情形,其中各文本框的MultiLine属性和ScrollBars属性的设置如表5.10所示。字体与字号大多数控件都有Font属性,用来设置显示在控件上文本的字体与字号。通过【

21、属性】窗口设置Font属性的方法是:单击Font属性,则在属性行的右端会出现一个显示有符号的按钮,单击该按钮则打开【字体】对话框。在该对话框中选择一种需要的字体(如隶书)、样式(如规则)、字号(如小四)和效果(如下划线),单击【确定】按钮即可。 与其他属性不同,在代码中不能使用Font属性,如下列语句是错误的。 Text1.Font=宋体. Textl.Font=宋体,四号. 事实上,在【属性】窗口中通过设置Font属性同时也设置了多项属性,如字体、字号和效果等。而在代码中,每一个属性都对应一个属性名,如字体的属性名为FontName.表5.11中列出了在代码中设置字体、字号、黑体和下划线等属

22、性的属性名以及示例。选择文本文本框控件还提供了3个属性,用于操作用户所选择的文本。且这3个属性不能在【属性】窗口中设置,只能在代码中使用。表5.12中列出这3个属性以及它们的含义。 要在程序中操作用户所选的文本,如将文本替换成指定的文本以及更改所选文本的大小写等,都可以使用SelText属性。 例如,将用户在文本框(Textl) 中所选文本替换成3个A的语句如下: Texil.SelText=AAA. 要删除当前所选的文本,只需向SelText属性赋予空字符串即可,语句如下: Text1.Se1Text=. 将所选文本转换成大写,可以使用Ucase()函数,语句如下: Textl_SelTex

23、t=UCase(Textl.SelText). 实例5.6替换文本。 在该程序中,用户在一个文本框中输入一段文本,使用鼠标拖动选中要替换的字符串,则在窗体上显示出所选字符串的起始位置和字符串的长度。在另一个文本框中输入替换内容后,单击【替换】按钮即可将所选的字符串替换,如图5.19所示,将用户所选的字符串替换成了改变两个字。 在窗体中放置五个标签控件、两个文本框控件和一个按钮控件,如图5.20所示。其中各对象的属性设置如表5.13所示。使用鼠标拖动选中文本框中的字符串后,释放鼠标,则窗体上就显示出所选字符串的信息。因此,可以将显示所选字符串信息的代码添加到文本框的MouseUp事件中。Texs

24、el_MouseUp事件过程如下所示: Private Sub Textsel_MouseUp(Button As Interger,Shift As Integer,x As Single,Y As Single ) LabStart.Vaption=TextSel.SelStart LabStart.Caption=TextSel.selLengthEnd Sub 在按钮的Click事件中添加如下代码: Private Sub Comch_Click() Text.SelText Texch.Text End Sub 这样,一个替换文本程序就创建完毕。密码框密码框是一种特殊的文本框,它的特

25、殊之处在于:当用户向密码框中输入文本时,不论用户输入的是什么字符,在密码框中总是显示特定的字符。如*、#等。这样,别人在密码框中就看不到用户所输入的实际内容,从而达到了保密的效果。 通过设置文本框的Password Char属性就可以将普通的文本框设置成为密码框。在缺省情况下,Password Char属性的值为空字符串。这时用户在键盘上输入什么字符,在文本框中就显示什么字符。如果将Password Char属性的值设置为某个字符,如设置为星号(*),则用户在文本框中输入任何字符都将显示为*.例如,输入的是Hcq,显示的则是*. 但是,文本框的Password Char属性并不影响Text属性

26、,尽管在文本框中显示的是在Password Char属性中指定的字符,但Text属性返回的仍然是用户输入的实际内容。根据这一点,可以编写一个验证密码的小程序。 实例5.7 验证密码 在该程序中,要求用户输入密码,如果输入正确,则用户可以继续下一步操作,否则,在窗体上显示密码输入错误,请再试一次!,并且用户只有三次输入密码的机会,如果三次输入错误,则文本框变为无效,不能接受用户的任何输入。在本例中,认为正确的密码为abcd. 单击【添加窗体】按钮向当前工程中再添加一个窗体,其中一个窗体用作验证密码。在用作验证密码的窗体上放置两个标签控件、一个文本框控件和一个按钮控件,如图5.21所示。各对象属性

27、设置如表5.14所示。在另一个窗体上放置一个标签控件和一个按钮控样,如图5.22所示,各对象的属性如表5.15所示。双击验证密码窗体中的【确定】按钮,打开【代码】窗口,将下列代码添加到ComOk_Click事件过程中: Private Sub ComOK_Click() Static i As Integer If i=2 Then If TexPass.Text=“abcd”Then Unload ForPass Formain.Show Else LabMsg.Caption=“密码错误,请再试一遍!” End If Else LabMsg.Caption=“三次输入错误,拒绝重新输入!”

28、 TextPass.Enabled=False End If i=i+1 End Sub 在该段代码中,首先定义了一个静态变量i,它用来记录用户输入密码的次数。i的初值为O,每单击一次按钮,则i的值增1(i=i+1).然后使用If语句来判断i的值,如果i的值小于3,即用户输入密码不超过三次,又使用了一个If语句来判断用户所输入的密码是否正确。如果正确(即输入的是abcd),则验证密码窗体消失,同时启动另一个窗体。如果输入的密码不正确,则会在窗体的标签上显示密码错误,请再试一遍!.如果第三次输入密码也不正确,此时i的值已经累加到3.再次输入密码,程序不会再判断密码是否正确(因为13 ),而是在窗

29、体上显示三次输入错误,拒绝重新输入!,并且将文本框置为无效。因此,即便是用户在第四次输入了正确的密码,也无济于事。双击另一个窗体上的按钮控件,将程序结束语句End添加到按钮的Click事件中,如下所示: Private Sub ComMain_Click() End End Sub 在【工程属性】对话框中设置启动窗体为ForPass,运行该程序,则出现【验证密码】窗体,在文本框中输入字符串abcd,文本框中显示的是*,如图5-23所示。单击【确定】按钮,则验证密码窗体消失,另一个窗体显示出来,如图5.24所示。单击【关闭】按钮可以退出该程序。 再次运行该程序,在【验证密码】窗体的文本框中随意输

30、入一个字符串(不是abcd),单击【确定】按钮,则窗体上显示密码错误,请再试一遍!.如图5.25所示。连续三次输入错误的密码,当第四次输入密码时,无论密码正确与否,单击【确定】按钮则窗体上显示三次输入错误,拒绝重新输入!,并且将文本框置为无效,用户无法继续输入密码,如图5.26所示。Change事件文本框也有Click, DblClick等事件,但文本框的这些事件并不常用。文本框较常用的一个事件是Change事件,一旦文本框中的内容被改变,就会触发它的Change事件。 实例5.8利用Change事件 在该程序中,用户在文本框中输入内容时,窗体上就会同步显示出用户所输入的内容。并且如果用户修改了文本框内容,则窗体上的内容也会同步修改。 要使窗体上显示的内容总是与文本框中的内容同步改变,需要使用文本框的Change事件,因为该事件能随时感知到文本框中内容的改变。 在窗体中放置一个标签控件、一个文本框控件和一个按钮控件,如图

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

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