您好,欢迎访问三七文档
第3章简单VB程序设计众所周知,VB应用程序的执行是由事件驱动的,当用户触发某一事件时,执行相应的事件过程,这些事件过程之间并没有特定的执行次序。但在每一个事件过程内部,是有一定的执行控制流程的,这就是通常所说的三种基本结构:顺序结构、分支结构、循环结构。顺序结构是最简单的一种结构,该结构按语句排列的先后顺序执行。本章的主要内容有:VB最基本的几个对象,与顺序结构有关的语句和方法。通过本章的学习,可以进行简单VB程序设计。退出3.1窗体3.2命令按钮3.3标签3.4文本框3.5赋值语句3.6Print方法3.7输入框3.8消息框3.9注释语句、结束语句3.10程序调试3.1窗体创建VB应用程序的第一步是创建用户界面。用户界面的基础是窗体,各种控件对象必须建立在窗体上。启动VB后,即在屏幕上显示一个窗体,如图3-1所示。3.1.1窗体的主要属性窗体的属性决定了窗体的外观和操作。窗体的大部分属性可用两种方法来设置:通过属性窗口设置和通过程序代码设置。有少量的属性不能在程序代码中设置。(1)Caption属性设置窗体的标题内容。标题内容应概括说明本窗体作用。(2)MaxButton属性和MinButton属性MaxButton属性为True,窗体右上角有最大化按钮;为False时,无最大化按钮。MinButton属性为True,窗体右上角有最小化按钮;为False时,无最小化按钮。(3)BorderStyle属性决定窗体边框式样及窗体是否能调整大小。(4)BackColor属性和ForeColor属性BackColor属性设置窗体的背景颜色,ForColor属性设置窗体的前景颜色。窗体的前景颜色是执行Print方法时所显示文本的颜色。(5)Height属性和Width属性设置窗体的初始高度和宽度。其单位为Twip。1Twip=1/20点=1/1440英寸=1/567cm。(6)Left属性和Top属性用于设置窗体左边框距屏幕左边界的距离和窗体顶边距屏幕顶端的距离。其单位为Twip。(7)Name(名称)属性设置窗体的名称,在程序代码中用这个名称引用该窗体。新建工程时,窗体的名称缺省为Form1;添加第二个窗体,其名称缺省为Form2,依次类推。为了便于识别,用户通常给Name属性设置一个有实际意义的名称。(8)Enabled属性属性值为True或False,设置对象是否能够对用户产生的事件做出反应。一般在程序中设置,用于临时屏蔽对窗体或其它控件的的控制。(9)Moveable属性属性值为True或False,设置是否可以移动窗体。(10)Visible属性属性值为True或False,设置窗体是否被显示。用户可用该属性在程序代码中控制窗体的隐现。(11)Picture属性设置在窗体中显示的图片。单击Picture属性右边的按钮,弹出“加载图片”对话框,用户可选择一个图片文件作为窗体的背景图片。若在程序中设置该属性的值,需要使用LoadPicture函数。(12)WindowState属性设置窗体启动后的大小状态。在VB中,虽然不同的对象有不同的属性集合,但有一些属性,如Name、Enabled、Visible、Height、Width、Left、Top等,其它控件也有,且具有相似的作用。在后续的章节中,主要介绍各种控件常用的特殊属性。3.1.2事件窗体最常用的事件有3种:Click(单击)、DbClick(双击)、Load(装入)。1.Click事件程序运行后,单击窗体触发该事件。2.DbClick事件程序运行后,双击窗体触发该事件。3.Load事件Load事件是窗体被装入内存工作区时触发的事件。如果这个事件过程存在,就马上执行它。Load事件过程通常用于启动程序时,对属性、变量的初始化以及装载数据等。【例3.1】窗体上无最大化、最小化按钮,程序运行后,在窗体上装入一幅图片作为背景,当单击窗体时,窗体变宽;当双击窗体时,则退出。程序运行界面如图3-2所示。事件过程如下:PrivateSubForm_Load()'装入图片Form1.Picture=LoadPicture(c:\pic\Changcheng.wmf)EndSubPrivateSubForm_click()'单击窗体Form1.Width=Form1.Width+1000EndSubPrivateSubForm_DblClick()'双击窗体EndEndSub说明:上机时,可通过查找文件的方法找一个图片文件,参照本例中的格式输入即可。3.2命令按钮在VB应用程序中,命令按钮是使用最多的对象之一,常常用它接受用户的操作信息,触发相应的事件过程,以实现指定的功能。3.2.1属性1.Caption属性设定命令按钮上显示的文本。2.Default属性该属性用于设置默认命令按钮。3.Style属性和Picture属性命令按钮上除了可以显示文字外,还可以显示图形。若要显示图形,首先应将Style属性设置为1,然后在Picture属性中设置要显示的图形文件。4.Value属性该属性只能在程序运行期间引用或设置。True表示被按下,False(默认)表示未被按下。3.2.2事件最常用的事件是Click事件。3.3标签标签(Label)主要用于显示不需要用户修改的文本。所以,标签可以用来标示窗体及窗体上的对象,如为文本框、列表框等添加描述性的文字,或者作为窗体的说明文字。3.3.1属性1.Caption属性设置标签要显示的内容。它是标签的主要属性。2.BorderStyle属性默认值为0,标签无边框;设置为1时,标签有立体边框。3.Autosize属性该属性用于设置标签是否自动改变尺寸以适应其内容。4.Alignment属性确定标签中内容的对齐方式。5.BackStyle属性该属性用于设置背景是否透明。3.3.2事件常用Click,DbClick事件。【例3.2】修改例3.1,在图片上加提示信息“请单击图片”,程序其它功能不变。程序运行界面如图3-2所示。操作如下:在窗体上添加一个标签,将其Caption属性设置为“请单击图片”,BackStyle属性设置为0(透明),程序代码不变。3.4文本框文本框(TextBox)在窗体中为用户提供一个既能显示文本又能编辑文本的区域。在文本框内,用户可以用鼠标、键盘按常用的方法对文字进行编辑,例如进行输入、删除、选择、复制及粘贴等各种操作。3.4.1属性1.Text属性设置文本框中显示的内容。2.Locked属性设置文本框中的内容是否可编辑。3.Maxlength属性设置文本框中允许输入的最大字符数。4.MultiLine属性决定文本框是否允许接收多行文本。5.PassWordChar属性当MultiLine为False时,该属性可设置显示在文本框中的替代符。6.ScrollBars属性决定文本框中是否有滚动条。3.4.2事件文本框除支持Click,DbClick事件,常用的还有Change、LostFocus事件。1.Change事件当用户输入新内容,或程序对文本框的Text属性重新赋值,从而改变文本框的Text属性时触发该事件。2.LostFocus事件当用户按下[Tab]键时光标离开文本框,或用鼠标选择其它对象时触发该事件,称为“失去焦点”事件。3.4.3方法文本框最常用的方法是SetFocus,使用该方法可把光标移到指定的文本框中,使之获得焦点。当使用多个文本框时,用该方法可把光标移到所需要的的文本框中。其使用格式为:1.对象.SetFocus【例3.3】程序运行后,随着用户的输入,标签中同步显示出用户对文本框的内容更新的次数。运行效果如图3-4所示。2.编写事件过程如下:PrivateSubText1_Change()Statici%i=i+1Label1.Caption=iEndSub请思考:标签中显示的数字是文本框中显示的字符个数吗?3.5赋值语句赋值语句是VB程序最常用、最基本的语句,它能为变量提供数据。另外,若要在程序代码中设置对象的属性,也要使用赋值语句。赋值语句有两种格式:格式1:变量名=表达式格式2:[对象名.]属性名=表达式赋值语句的作用是:首先计算“=”右边表达式的值,然后将该值赋给“=”左边的变量或对象的属性。在格式2中,若对象名省略,则默认对象为当前窗体。例如:x=2'把2赋给xy=x*3'计算x*3的值,得6,把6赋给yx=x+1'计算x+1的值,得3,把3赋给xa$=Hello'把“Hello”赋给a$Text1.Text=你好!'把“你好!”赋给Text1的Text属性【例3.4】已知三角形三边a,b,c的长,求三角形的面积,输出三条边长及面积。分析:应用程序的界面应该能让用户输入三边的长,程序在接收用户输入的数据后,利用数学公式对数据进行计算,并把结果输出到屏幕上。已知三角形三边a,b,c的长,求三角形的面积的公式为:其中p=(a+b+c)/2。(1)界面设计在窗体上建立5个标签、3个文本框和1个命令按钮。设置各对象的属性,如表3-3所示。))()((cpbpapps设计完成的界面如图3-5所示。(2)编写事件过程如下:PrivateSubCommand1_Click()Dima!,b!,c!,p!,s!a=Text1.Textb=Text2.Textc=Text3.Textp=(a+b+c)/2s=Sqr(p*(p-a)*(p-b)*(p-c))Label5.Caption=sEndSub3.6Print方法3.6.1Print的格式及功能格式:[对象名.]Print[表达式列表]功能:在对象上输出表达式的值。说明:(1)对象名:可以是Form(窗体)、Debug(立即窗口)、Picture(图片框)、Printer(打印机)。省略此项,表示在当前窗体上输出。例如:Print23*2=;23*2'在当前窗体上输出23*2=46Picture1.PrintGood'在图片框Picture1上输出GoodPrinter.PrintMorning'在打印机上输出Morning(2)表达式列表:是一个或多个表达式,若为多个表达式,则各表达式之间用“,”或“;”隔开。省略此项,则输出一空行。(3)用“,”分隔各表达式时,各项在以14个字符位置为单位划分出的区段中输出,每个区段输出一项;用“;”分隔各表达式时,各项按紧凑格式输出。(4)如果在语句行末尾有“;”,则下一个Print输出的内容,将紧跟在当前Print输出内容后面;如果在语句行末尾有“,”,则下一个Print输出的内容,将在当前Print输出内容的下一区段输出;如果在语句行末尾无分隔符,则输出完本语句内容后换行,即在新的一行输出下一个Print的内容。例如:Print1;2;3Print4,5,Print6Print7,8PrintPrint9,10输出结果为:12345678910(3)定位输出:在Print方法中,可以使用Tab函数对输出项进行定位。例如:PrintTab(10);姓名;Tab(25);年龄则“姓名”和“年龄”分别从当前行的第10列和第25列开始输出。输出结果如下:姓名年龄Print方法中,还可以使用Spc函数,例如:Print后面有8个空格;Spc(8);前面有8个空格输出结果如下:后面有8个空格前面有8个空格3.6.2Cls方法格式:[对象名.]Cls功能:Cls方法清除Print方法显示的文本或在图片框中显示的图形,并把输出位置移到对象的左上角。格式中的对象可以是窗体或图片框,如果省略对象名,则清除当前窗体的显示内容。3.7输入框我们知道,文本框可以接收用户的输入。输入框也可以接受用户的输入,但是其风格和用法有别于文本框。VB提供的InputBox函数可生成输入框。例如:p$=InputBox(请输入密码,密码框)执行该语句后,屏幕上显示如图3-6所示的输入框。每执行一次InputBox函数,用户只能输入一个数据,另外,输入框的样式是固定的,用户不能改变。用户能改变的是输入框的“提示”和“标题”的内容,“提示
本文标题:VB教程(第三章)
链接地址:https://www.777doc.com/doc-3264680 .html