1、2023-12-13Visual Basic程序设计简明教程13.1 3.1 数据输入数据输入lVBVB程序的执行则采用事件驱动机制,由用户或程序的执行则采用事件驱动机制,由用户或者系统触发某个事件去执行相应的事件过程。者系统触发某个事件去执行相应的事件过程。l尽管事件处理过程之间并无特定的执行顺序,尽管事件处理过程之间并无特定的执行顺序,但是每个事件过程的内部却依然包含着顺序、选但是每个事件过程的内部却依然包含着顺序、选择和循环三种基本控制结构。择和循环三种基本控制结构。l顺序结构是结构化程序设计中最基本的控制结顺序结构是结构化程序设计中最基本的控制结构之一,其语句按照书写的顺序依次逐条执行
2、。构之一,其语句按照书写的顺序依次逐条执行。2023-12-13Visual Basic程序设计简明教程23.1 3.1 数据输入数据输入InputBoxInputBox函数函数l调用调用InputBoxInputBox函数时,系统将弹出一个输入对话框。函数时,系统将弹出一个输入对话框。lInputBoxInputBox函数的格式:函数的格式:InputBox(Prompt,Title,Default,InputBox(Prompt,Title,Default,)说明:说明:l(1 1)InputBoxInputBox函数返回一个字符串,该字符串就是用户在对话框中函数返回一个字符串,该字符串就
3、是用户在对话框中输入的数据。输入的数据。l(2 2)参数)参数PromptPrompt是必选项,它是一个字符串,用于提示用户当前应是必选项,它是一个字符串,用于提示用户当前应输入哪些数据。输入哪些数据。l(3 3)TitleTitle和和DefaultDefault这两个参数均为可选项,前者作为对话框的标这两个参数均为可选项,前者作为对话框的标题,后者作为对话框的默认输入内容。题,后者作为对话框的默认输入内容。l(4 4)如果位于参数列表中间的可选项参数被省略,则必须用逗号标)如果位于参数列表中间的可选项参数被省略,则必须用逗号标示这些被省略的参数。示这些被省略的参数。2023-12-13Vi
4、sual Basic程序设计简明教程3Dim name As String,score As IntegerDim name As String,score As Integername=InputBox(name=InputBox(“请输入学生的姓名请输入学生的姓名”,“姓名输姓名输入入”)省略了默认值省略了默认值score=Val(InputBox(score=Val(InputBox(请输入学生的成绩请输入学生的成绩,80),80)省略了标题省略了标题 2023-12-13Visual Basic程序设计简明教程4 3.1 3.1 数据输入数据输入文本框控件文本框控件 l用户可以在文本框
5、控件中用户可以在文本框控件中输入数据,然后在程序中通输入数据,然后在程序中通过赋值语句把它赋给某个变量。过赋值语句把它赋给某个变量。l一般形式:一般形式:变量变量=文本框对象文本框对象.text.textl举例:举例:Dim name As String,score As Integer name=Text1.text 输入学生的姓名输入学生的姓名 score=Val(Text2.text)输入学生的成绩输入学生的成绩2023-12-13Visual Basic程序设计简明教程53.2 3.2 数据输出数据输出标签控件标签控件l一般形式:标签对象一般形式:标签对象.caption=表达式表达式
6、 Label1.caption=name 输出学生的姓名输出学生的姓名Label2.caption=Str(score)输出学生的成绩。输出学生的成绩。3.2 3.2 数据输出数据输出文本框控件文本框控件l一般形式:文本框对象一般形式:文本框对象.text=.text=表达式表达式 Text1.text=name Text1.text=name 输出学生的姓名输出学生的姓名 Text2.text=Str(score)Text2.text=Str(score)输出学生的成绩输出学生的成绩l文本框控件既可以用于输入数据,也可以用于输出数据,文本框控件既可以用于输入数据,也可以用于输出数据,这取决于
7、控件对象是作为赋值运算符的左操作数还是右这取决于控件对象是作为赋值运算符的左操作数还是右操作数。操作数。2023-12-13Visual Basic程序设计简明教程63.2 3.2 数据输出数据输出 MsgBoxMsgBox函数函数l l调用调用MsgBox函数时,系统将弹出一个消息对话函数时,系统将弹出一个消息对话框,该对话框能够显示一些提示性的信息,并接收框,该对话框能够显示一些提示性的信息,并接收用户做出的选择。用户做出的选择。lMsgBox函数的格式:函数的格式:MsgBox(Prompt,Buttons,Title,)2023-12-13Visual Basic程序设计简明教程7说明
8、:说明:(1)参数)参数Prompt是必选项,它是一个字符串,可以作为输出的是必选项,它是一个字符串,可以作为输出的数据。数据。(2)参数)参数Buttons和参数和参数Title均为可选项,前者是一个整型表达均为可选项,前者是一个整型表达式,确定了消息对话框的类型;后者作为对话框的标题。式,确定了消息对话框的类型;后者作为对话框的标题。Buttons的默认值是的默认值是vbOKOnly,实际设置时可以由,实际设置时可以由4个分组值相加而成。例个分组值相加而成。例如弹出一个采用应用模式的消息对话框,显示如弹出一个采用应用模式的消息对话框,显示“终止终止”、“重试重试”和和“忽略忽略”按钮,图标
9、为严重错误信息,默认是第一个按钮,按钮,图标为严重错误信息,默认是第一个按钮,Buttons的值可以写为的值可以写为2+16+0+0,也可以直接写为,也可以直接写为18。(3)MsgBox函数返回一个整数,该整数代表用户在对话框中函数返回一个整数,该整数代表用户在对话框中选中的按钮。如果在函数调用时只给出第一个参数(选中的按钮。如果在函数调用时只给出第一个参数(Prompt)的)的值,就不必使用赋值语句;如果明确给出了其它参数的值,则必须值,就不必使用赋值语句;如果明确给出了其它参数的值,则必须用赋值语句把函数的返回值予以保存。用赋值语句把函数的返回值予以保存。2023-12-13Visual
10、 Basic程序设计简明教程8举例:举例:Dim name As String,score As Integername=宋开莉score=80MsgBox(学生姓名:&name&vbCr&学生成绩:&score)2023-12-13Visual Basic程序设计简明教程93.2 3.2 数据输出数据输出 PrintPrint方法方法lPrint的功能是在对象上输出信息,其中对的功能是在对象上输出信息,其中对象可以是窗体、图片框、立即窗口和打印机。象可以是窗体、图片框、立即窗口和打印机。lPrint方法的格式:方法的格式:对象对象.Print 表达式列表表达式列表;|,2023-12-13V
11、isual Basic程序设计简明教程10说明:说明:(1)调用)调用Print方法时如果未给出对象名,则默认对象是窗体。方法时如果未给出对象名,则默认对象是窗体。(2)表达式列表是可选项,如果省略则输出一个空行。)表达式列表是可选项,如果省略则输出一个空行。Print输出信输出信息之后通常将会自动换行,如果语句末尾有分号(息之后通常将会自动换行,如果语句末尾有分号(;)或者逗号()或者逗号(,),则),则表示不换行。表示不换行。(3)表达式列表中可以有多个表达式,表达式之间用空格、分号或者)表达式列表中可以有多个表达式,表达式之间用空格、分号或者逗号分隔,其中空格和分号的效果相同。如果是数值
12、表达式,就输出它的逗号分隔,其中空格和分号的效果相同。如果是数值表达式,就输出它的值;如果是字符串,则原样输出。值;如果是字符串,则原样输出。(4)如果用分号()如果用分号(;)分隔表达式,按照紧凑格式输出数据;如果用)分隔表达式,按照紧凑格式输出数据;如果用逗号(逗号(,)分隔表达式,按照标准格式输出数据,此时当前数据项在下一)分隔表达式,按照标准格式输出数据,此时当前数据项在下一个输出区中显示。个输出区中显示。2023-12-13Visual Basic程序设计简明教程11举例:举例:Dim name As String,score As Integer name=宋开莉宋开莉 score
13、=80 Print 学生姓名:学生姓名:;不换行不换行 Print name Print 学生成绩:学生成绩:;score 2023-12-13Visual Basic程序设计简明教程12相关函数:相关函数:1Spc函数函数 Spc函数的功能是在当前输出位置插入指定数量的空格,函数的功能是在当前输出位置插入指定数量的空格,其格式是:其格式是:Spc(n)2Tab函数函数 Tab函数的功能是将当前输出位置定位至指定的地方,函数的功能是将当前输出位置定位至指定的地方,其格式是:其格式是:Tab(n)Dim name As String,score As Integer name=宋开莉宋开莉 sc
14、ore=80 Print 学生姓名:学生姓名:;Print Spc(5);name Print 学生成绩:学生成绩:;Tab(15);score 2023-12-13Visual Basic程序设计简明教程13相关函数:相关函数:3.Format函数函数lFormat函数一般用于函数一般用于Print方法中,可以使得方法中,可以使得数值、字符串或者日期按指定的格式输出。数值、字符串或者日期按指定的格式输出。lFormat函数的格式:函数的格式:Format(表达式表达式,格式字符串格式字符串)Print Format(3.14159,00.000)输出结果为输出结果为03.142Print F
15、ormat(3.14159,#.#E+#)输出结输出结果为果为31.416E-12023-12-13Visual Basic程序设计简明教程143.3 3.3 标签标签 标签(标签(LabelLabel)控件能够显示一些用户无法)控件能够显示一些用户无法直接更改的文本信息,它通常作为一种辅助性直接更改的文本信息,它通常作为一种辅助性的控件,用来标注那些自身不具备的控件,用来标注那些自身不具备CaptionCaption属属性的控件。在工具箱中表示为:性的控件。在工具箱中表示为:属性属性作用作用Name设置标签的对象名设置标签的对象名Caption设置标签所显示的文本信息设置标签所显示的文本信息
16、Alignment设置标签上文本的对齐方式设置标签上文本的对齐方式 BackStyle确定标签的背景是否透明,默认值是确定标签的背景是否透明,默认值是1,表示不透明,表示不透明BorderStyle设置标签的边框类型,默认值是设置标签的边框类型,默认值是0,表示无边框,表示无边框AutoSize确定是否根据标签上文本的长度自动调整标签自身的尺寸,确定是否根据标签上文本的长度自动调整标签自身的尺寸,默认值是默认值是FalseWordWrap确定是否根据标签上文本的长度自动换行,默认值是确定是否根据标签上文本的长度自动换行,默认值是False2023-12-13Visual Basic程序设计简明
17、教程15说明:说明:(1)程序第一个标签控件的默认对象名是)程序第一个标签控件的默认对象名是Label1,依次类推。,依次类推。(2)Caption是标签控件最重要的属性之是标签控件最重要的属性之一,其属性值是一个字符串,即显示的文本,一,其属性值是一个字符串,即显示的文本,最多允许有最多允许有1024个字符。个字符。2023-12-13Visual Basic程序设计简明教程163.4 3.4 文本框文本框文本框(文本框(TextBox)控件是一种常用的)控件是一种常用的标准控件,兼备数据输入和输出的功能,标准控件,兼备数据输入和输出的功能,还提供了插入、选择以及复制等文本编辑还提供了插入、
18、选择以及复制等文本编辑手段。手段。在工具箱中表示为:在工具箱中表示为:文本框的常用属性文本框的常用属性 属性属性作用作用Name设置文本框的对象名设置文本框的对象名Text设置文本框所显示的文本信息设置文本框所显示的文本信息MaxLength设置文本框所显示的文本信息的最大长度,默认值是设置文本框所显示的文本信息的最大长度,默认值是0,表示长度,表示长度不受限制不受限制MultiLine确定文本框能否输入多行文本,默认值是确定文本框能否输入多行文本,默认值是False,表示只允许输入,表示只允许输入单行文本单行文本ScrollBars确定文本框能否有滚动条确定文本框能否有滚动条Password
19、Char设置密码符号,默认值是空串设置密码符号,默认值是空串SelText确定当前所选的文本确定当前所选的文本SelStart确定所选文本的开始位置,如果未选中文本,则为插入点的位置确定所选文本的开始位置,如果未选中文本,则为插入点的位置SelLength确定所选文本的长度确定所选文本的长度2023-12-13Visual Basic程序设计简明教程17说明:说明:(1 1)程序第一个文本框控件的默认对象名是)程序第一个文本框控件的默认对象名是Text1Text1,依次类推。依次类推。(2 2)TextText是文本框控件最重要的属性之一,其属性值是文本框控件最重要的属性之一,其属性值是一个字
20、符串,即显示的文本。只允许输入单行文本时,是一个字符串,即显示的文本。只允许输入单行文本时,最多可以有最多可以有20482048个字符;如果允许输入多行文本,则最个字符;如果允许输入多行文本,则最多可以有多可以有32K32K个字符。个字符。2023-12-13Visual Basic程序设计简明教程18文本框的常用事件文本框的常用事件:事件事件来源来源Change文本框的文本框的Text属性值发生改变属性值发生改变GotFocus文本框获得焦点文本框获得焦点LostFocus文本框失去焦点文本框失去焦点KeyPress用户按下并且释放键盘上的一个键用户按下并且释放键盘上的一个键2023-12-
21、13Visual Basic程序设计简明教程19说明:说明:(1 1)当用户在文本框中输入新内容,或者程序运行时修)当用户在文本框中输入新内容,或者程序运行时修改了改了TextText属性值,都会自动触发属性值,都会自动触发ChangeChange事件。事件。(2 2)只有对象的)只有对象的EnabledEnabled和和VisibleVisible的属性值是的属性值是TrueTrue时,时,它才有获得焦点的能力。在程序运行时,用户可以通过鼠它才有获得焦点的能力。在程序运行时,用户可以通过鼠标单击或者按标单击或者按TabTab键切换,使某个控件获得焦点。键切换,使某个控件获得焦点。(3 3)当
22、用户按下并且释放键盘上的一个键,将会触发焦)当用户按下并且释放键盘上的一个键,将会触发焦点所在控件的点所在控件的KeyPressKeyPress事件。该事件返回所输入字符的事件。该事件返回所输入字符的UnicodeUnicode码,在程序中加以判断,就会识别出用户刚才按下码,在程序中加以判断,就会识别出用户刚才按下了哪个键。了哪个键。2023-12-13Visual Basic程序设计简明教程20例例3.13.1:在文本框中输入密码,然后单击窗体,在文本框中输入密码,然后单击窗体,在标签中显示该密码。在标签中显示该密码。完成步骤:完成步骤:l新建一个工程,在窗体上分别创建新建一个工程,在窗体上
23、分别创建2 2个标签、个标签、1 1个文本个文本框和框和1 1个命令按钮。在属性窗口中对窗体和控件的属性进个命令按钮。在属性窗口中对窗体和控件的属性进行设置。行设置。l文本框的文本框的PasswordCharPasswordChar属性值设置为属性值设置为“*”,表示输,表示输入的字符都显示为入的字符都显示为“*”;标签;标签Label2Label2的的BorderStyleBorderStyle属属性值设置为性值设置为1 1,表示该标签有边框。,表示该标签有边框。2023-12-13Visual Basic程序设计简明教程21Private Sub Form_Click()Label2.Ca
24、ption=您输入的密码是:您输入的密码是:+Text1.TextEnd SubPrivate Sub Command1_Click()EndEnd Sub 2023-12-13Visual Basic程序设计简明教程223.5 3.5 命令按钮命令按钮命令按钮(命令按钮(CommandButton)控件通常用)控件通常用来接受用户的操作命令,一般通过单击命令按来接受用户的操作命令,一般通过单击命令按钮来触发事件过程,执行指定的操作,从而实钮来触发事件过程,执行指定的操作,从而实现特定的功能。在工具箱中表示为:现特定的功能。在工具箱中表示为:命令按钮的常用属性命令按钮的常用属性 属性属性作用作
25、用Name设置命令按钮的对象名设置命令按钮的对象名Caption设置命令按钮的标题设置命令按钮的标题Default确定命令按钮是否为确定命令按钮是否为Enter键的默认按钮键的默认按钮Cancel确定命令按钮是否为确定命令按钮是否为Esc键的默认按钮键的默认按钮Enabled确定命令按钮是否有效,默认值是确定命令按钮是否有效,默认值是True,表示有效,表示有效Visible确定命令按钮是否可见,默认值是确定命令按钮是否可见,默认值是True,表示可见,表示可见Style设置命令按钮的外观,默认值是设置命令按钮的外观,默认值是0,表示只能显示文字,表示只能显示文字Picture设置命令按钮上显
26、示的图片文件设置命令按钮上显示的图片文件2023-12-13Visual Basic程序设计简明教程23说明:说明:(1 1)程序第一个命令按钮控件的默认对象名是)程序第一个命令按钮控件的默认对象名是Command1Command1,依,依次类推。次类推。(2 2)设置)设置CaptionCaption属性时,在标题的某个字母前插入一个连属性时,在标题的某个字母前插入一个连接符(接符(&),即可为命令按钮设置快捷键。),即可为命令按钮设置快捷键。(3 3)当某个命令按钮的)当某个命令按钮的DefaultDefault属性值为属性值为TrueTrue时,按下时,按下EnterEnter键就相当于
27、用鼠标单击了该按钮;当某个命令按钮的键就相当于用鼠标单击了该按钮;当某个命令按钮的CancelCancel属属性值为性值为TrueTrue时,按下时,按下EscEsc键就相当于用鼠标单击了该按钮。键就相当于用鼠标单击了该按钮。(4 4)当某个命令按钮的)当某个命令按钮的EnabledEnabled属性值是属性值是FalseFalse时,它就会失时,它就会失效并呈灰色,此时既不能接受用户的操作命令,也不能响应事效并呈灰色,此时既不能接受用户的操作命令,也不能响应事件。当某个命令按钮的件。当某个命令按钮的VisibleVisible属性值是属性值是FalseFalse时,它在程序运时,它在程序运行
28、时将不会显示在窗体中。行时将不会显示在窗体中。(5 5)当)当StyleStyle属性值是属性值是1 1时,表示在命令按钮上可以显示图形。时,表示在命令按钮上可以显示图形。此时即可在此时即可在PicturePicture属性中选择图片文件,程序运行时该命令按属性中选择图片文件,程序运行时该命令按钮就会成为图形按钮。钮就会成为图形按钮。2023-12-13Visual Basic程序设计简明教程243.6 3.6 程序举例程序举例例例3.23.2:输入:输入3 3位学生的成位学生的成 绩,求其平均值。绩,求其平均值。l新建一个工程,在窗体上分别创建新建一个工程,在窗体上分别创建1 1个标签、个标
29、签、1 1个文本框和个文本框和2 2个命令按钮,并设个命令按钮,并设置属性值。置属性值。l代码:代码:Private Sub Command1_Click()Dim num1 As Integer,num2 As Integer,num3 As Integer,aver As Singlenum1=Val(InputBox(请输入第请输入第1位学生的成绩位学生的成绩)num2=Val(InputBox(请输入第请输入第2位学生的成绩位学生的成绩)num3=Val(InputBox(请输入第请输入第3位学生的成绩位学生的成绩)aver=(num1+num2+num3)/3Text1.Text=a
30、verEnd SubPrivate Sub Command2_Click()EndEnd Sub 2023-12-13Visual Basic程序设计简明教程25例例3.43.4:1、交换两个整型变量的值。、交换两个整型变量的值。2、在窗体上分别创建、在窗体上分别创建3个标签、个标签、2个文本框和个文本框和3个个命令按钮,并设置属性值。命令按钮,并设置属性值。Private Sub Command1_Click()Private Sub Command1_Click()Dim a%,b%,t As IntegerDim a%,b%,t As Integera=Val(Text1.Text)a=
31、Val(Text1.Text)b=Val(Text2.Text)b=Val(Text2.Text)t=at=aa=ba=bb=tb=tLabel3.Caption=Label3.Caption=交换后交换后 Text1.Text=aText1.Text=aText2.Text=bText2.Text=bEnd SubEnd SubPrivate Sub Command2_Click()Private Sub Command2_Click()Label3.Caption=Label3.Caption=交换前交换前 Text1.Text=Text1.Text=Text2.Text=Text2.Text=End SubEnd SubPrivate Sub Command3_Click()Private Sub Command3_Click()EndEndEnd SubEnd Sub