1、第四讲 基本控件,Visual Basic 程序设计教程,内蒙古科技大学工程训练中心 韩 艳,工程训练中心,2,P,本讲主要内容,基本控件的重要属性 基本控件的常用事件,工程训练中心,3,P,1、属性 标签(Label)主要用于显示一小段文本,通常用来标注本身不具有Caption属性的控件,如用标签给文本框附加描述等。,2、事件标签可以触发Click和DblClick等事件,但很少用来触发。,一、标签(Label),工程训练中心,4,P,例 在窗体创建两个标签,单击一次窗体后,将两个标签上的内容交换。解题思路:触发的事件为:窗体的click事件。,Temp,Label1.caption,Lab
2、el2.caption,Temp=Label1.caption (1),Label1.caption = Label2.caption (2),Label2.caption =Temp (3),相应的程序命令:,一、标签(Label),工程训练中心,5,P,1、属性 文本框(TextBox)提供一个既能显示又能编辑文本的区域。在程序运行中,可在文本框中输入正文,也可对其中的文字进行选择、删除、复制和粘贴等操作。,二、文本框(TextBox),工程训练中心,6,P,2、方法常用方法为SetFocus方法。调用此方法可以使文本框获得焦点。 3、事件:除Click、DblClick事件外,还有以下事
3、件(1)Change:当文本框的Text属性值发生变化时,将触发此事件。(2)GotFocus:当文本框获得焦点时,触发该事件。(3)LostFocus:当文本框失去焦点时,触发该事件。(4)KeyPress:当文本框获得焦点后,并在键盘按下某一个键时触发该事件,二、文本框(TextBox),工程训练中心,7,P,例【2-8】窗体上画一文本框,名称为txtInput,无初始内容;再画一图片框,名称为picOutput。请编写事件过程,使得运行时,在文本框中每输入一个字符,就在图片框中输出一行文本框中的的完整内容。 解题思路: 触发事件为文本框的change事件;图片框输出调用print方法。,
4、Private Sub txtInput_Change( )picOutput.Print txtInput.text End Sub,二、文本框(TextBox),工程训练中心,8,P,1、属性,三、命令按钮(ComandButton),2、方法:常用方法为SetFocus方法。调用此方法可以使按钮获得焦点当Enabled=True时,调用SetFocus方法才能使对象接受焦点。3、事件常用事件为Click事件,工程训练中心,9,P,例【2-9】在窗体上画一名称为L1标签,标题为“密码”;画两个名称为T1,T2文本框,无初始内容;再画三个命令按钮,名称分别为C1,C2,C3,标题分别为“显示
5、”、“隐藏”、“复制”。运行时,向T1中输入的所有字符都显示“*”,单击“显示”按钮后,T1中显示所有字符;再单击“隐藏”按钮后,T1中所有字符都被“?”覆盖;单击“复制”后,把T1中的实际内容都复制到T2中 解题思路:字符覆盖设置PasswordChar;分别编写三个命令按钮的单击事件过程。,三、命令按钮(CommandButton),Private Sub C1_Click()T1.PasswordChar = “ End Sub Private Sub C2_Click()T1. PasswordChar= “?“ End Sub Private Sub C3_Click()T2.Tex
6、t = T1.Text End Sub,工程训练中心,10,P,2.4.4 焦点与Tab顺序1、焦点焦点是指控件对象接受鼠标或键盘输入的能力。只有具有焦点的控件对象才能接受用户由鼠标和键盘的输入。当控件对象获得焦点时,触发GotFocus事件,失去焦点时,触发LostFocus事件。大多数控件都支持以上两个事件。控件对象获得焦点的途径:(1)直接操作:比如用Tab键或用快捷键、鼠标直接点击;(2)在程序中调用SetFocus方法;2、Tab顺序在程序运行中,当按下Tab键时,焦点将在该程序的控件上顺序移动,这就是Tab顺序。通常,在设计程序过程中,Tab顺序是由控件的建立顺序决定的。若要修改T
7、ab顺序,需要改变TabIndex的属性值即可。同一时刻,当前只有一个控件对象获得焦点。,四、其他,工程训练中心,11,P,控件的默认属性是指在程序运行中,不必指定控件的属性名就可以改变其值的属性。如:文本框的默认属性为Text,则以下的赋值是等价的:Text1.text =“Visual Basic” Text1=“Visual Basic”,五、控件的默认属性,工程训练中心,12,P,1、在窗体上建立对象,2、设置对象的属性,3、编写对象事件过程,4、运行调试和保存程序,六、 创建Visual Basic应用程序的基本步骤,工程训练中心,13,P,例:编写一个图片浏览器,以实现对两幅图片内
8、容进行浏览。 解题思路:在窗体上放置一个图片框和三个命令按钮。,Private Sub Command1_Click( )picture1.picture=loadpicture(“d:abctu1.jpg”) End Sub Private Sub Command2_Click( )picture1.picture=loadpicture(“d:abctu2.jpg”) End Sub,六、 创建Visual Basic应用程序的基本步骤,工程训练中心,14,P,一、工程的构成一个VB工程共包含7种类型文件 1、工程文件(.vbp)该文件共包含与该工程有关的全部文件和对象的清单。2、窗体文件
9、(.frm)该文件包含窗体及控件对象的属性设置;窗体级的变量和外部过程的声明;事件过程和用户自定义过程。每一个窗体都有一个窗体文件。3、窗体的二进制文件(.frx)当窗体或控件的数据含有二进制属性(如图片或图标),将窗体文件保存时,系统会自动产生同名的.frx文件。4、标准模块文件(.bas)该文件包含模块级的变量和外部过程声明;用户自定义的、可供本工程内各窗体调用的过程。该文件可选。,七、 Visual Basic工程的组成与管理,工程训练中心,15,P,5、类模块文件(.cls)该文件可选。用于创建含有属性和方法的用户自己的对象。6、资源文件(.res)该文件可选,包含不必重新编辑代码就可
10、以位图、字符串和其他数据。7、ActiveX控件的文件(.ocx)该文件可以添加到工具箱并在窗体中应用。,七、 Visual Basic工程的组成与管理,工程训练中心,16,P,二、 创建、打开和保存工程1、新建工程2、打开工程3、保存工程4、工程另存为说明:(1)保存工程文件时,VB还将自动保存与工程有关的修改过的窗体或标准模块等文件。(2)VB可以同时打开多个工程,构成工程组,工程组文件扩展名为.vbg。使用工程组对调用ActiveX控件很有用。通过“文件”菜单的“添加工程”向当前工程添加附加工程;通过“删除工程”,可以从当前工程组删除一个工程。(3)单个窗体或模块文件可以在几个工程文件间
11、共享,对一个工程中的窗体或模块所作的改变,会影响到共享该模块的所有工程。,七、 Visual Basic工程的组成与管理,工程训练中心,17,P,三、 添加、删除和保存文件1、工程菜单2、文件菜单说明:(1)窗体名和窗体文件名是不同的概念。窗体名是窗体文件的Name属性,在程序中可用窗体名称来引用窗体,同一工程中的多个窗体不能同名;窗体文件名是窗体文件存放在磁盘上的文件名,该文件包含了窗体上所有控件的属性和控件事件过程代码,同一工程中不能有相同的窗体文件名; (2)在工程添加文件时,系统只是将对于该现存文件的引用纳入工程,而不是复制到工程中。故如添加进工程后文件更改后保存,将会影响包含此文件的
12、任何工程。(3)在工程中删除文件,VB将在保存此工程时更新工程文件中的这一信息,文件虽从工程中删除了,但该文件仍保存在磁盘上。,七、 Visual Basic工程的组成与管理,工程训练中心,18,P,三、 添加、删除和保存文件(4)对工程中的文件改名:方法一:将窗体文件“另存为”规定的文件名后,再将原文件名的文件删除;方法二:在文件夹中将该文件重新命名后,再在文本编辑器中打开工程文件,修改其中的“ form*.frm”语句。(5)若工程中包含多个窗体,则必须指定启动窗体。VB菜单工程工程1属性,七、 Visual Basic工程的组成与管理,工程训练中心,19,P,四、工程环境设置打开“工具”菜单下的“选项”命令: 1、“编辑器”选项卡:用于设置代码窗口和工程窗口的一些特殊属性。2、“通用”选项卡:为当前的VB工程设置窗体网格信息,错误处理方式以及编译方式。,七、 Visual Basic工程的组成与管理,工程训练中心,20,P,本讲作业,书上38页选择题填空题编程题,