VB教学课件完整版_第1页
VB教学课件完整版_第2页
VB教学课件完整版_第3页
VB教学课件完整版_第4页
VB教学课件完整版_第5页
已阅读5页,还剩279页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VB程序设计章节目录第01章VisualBasic概述第02章VB可视化编程基础第03章窗体第04章常用标准控件第05章VisualBasic语法基础第07章选择结构第08章循环结构第09章数组第10章过程第1章VisualBasic概述本章的学习要点了解VisualBasic的产生和发展熟悉VisualBasic的基本特点掌握VB软硬件工作环境及安装步骤31.1VisualBasic的产生和发展VisualBasic是美国微软公司(Microsoft)于1991年推出的基于BASIC语言的软件开发工具,是一种面于对象的可视化编程语言。Basic:流行的计算机语言。VisualBasic在其基础发展而来的。从1991年的1.0版开始,共经历了1992年2.0版、1993年3.0版、1995年4.0版、1997年5.0版、1998年6.0版共6种版本。其中5.0以前主要应用于DOS和Windows3.x等16位应用程序的开发,5.0以后的版本只能运行在Windows9.x或NT操作系统下,是一个32位的应用程序开发工具。Visual:可视化,是开发图形用户界面的方法,简化繁琐复杂的界面设计。41.2VisualBasic的基本特点VisualBasic之所以能够被广泛应用,主要由于其具有以下的特点:可视化设计可以很容易地创建一个人机界面,使开发人员几乎不用加入太多代码就可以开发出标准的Windows程序。面向对象

传统的C语言、BASIC语言、Pascal语言使用的是结构化程序设计方法,设计程序的主要工作就是设计算法和编写代码。

VB6.0的对象是建立在类的基础上的,一般来说,类是一些内容的抽象表示形式,而对象是类所表示内容的可用示例。VB6.0通过类的封装而使源程序更加便于维护。因此可视化界面的设计过程其实就是对象的建立过程。51.2VisualBasic的基本特点VisualBasic之所以能被被广泛应用,主要由于其具有以下的特点:事件驱动

VB6.0通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件驱动一段程序的运行。因此,在事件驱动模式下,程序的执行是依靠系统能够被识别的触发事件启动的。在设计好前端界面和对象后,就可以利用事件驱动的特点来编写对应的代码。程序也会根据事件发生的先后次序依次执行对应的代码。结构化程序设计语言由于VB6.0发源于BASIC,所以BASIC的简单易用、结构化设计的优点被很好地保留下来,不需要有很多的计算机专业知识也可轻松上手。61.2VisualBasic的基本特点VisualBasic之所以能被被广泛应用,主要由于其具有以下的特点:多种数据库访问方式很多应用程序都需要处理大量的数据,数据库的作用就是对数据进行管理、存储和访问。VB6.0采用JET数据库引擎和ODBC技术进行数据库的访问,支持多种类型的数据库系统,包括SQLServer、Oracal、FoxPro、Access以及Excel等。网络支持在应用程序中,可以使用结构化查询语言(SQL,即StructQueryLanguage)直接访问服务器上的数据库,并提供简单的面向对象的库操作命令、多用户数据库的加锁机制和网络数据库的编程技术,为单机上运行的数据库提供SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(Client/Server)方案。71.2VisualBasic的基本特点VisualBasic之所以能被被广泛应用,主要由于其具有以下的特点:ActiveX技术通过ActiveX技术可以使用其他应用程序提供的功能,例如Word字处理软件、Excel电子表格及其他Windows应用程序,使开发人员可以方便地使用标准的ActiveX部件,调用标准接口,实现特定的功能。81.3VisualBasic的版本及安装VisualBasic6.0的安装需要一定的软硬件环境,具体要求如下:操作系统:WindowsNTServer4.0、WindowsNTWorkstation4.0、Windows95或更高版本。CPU:486DX/66MHz或更高的处理器。内存:Windows95/98下要求24MB以上的内存,WindowsNT下要求32MB以上。磁盘空间:对于标准版或专业版,典型安装48MB,完全安装80MB。其他设备:CD-ROM驱动器,鼠标或其他光标设备。9练习第2章VB可视化编程基础本章的学习要点掌握VB的集成开发环境主窗口标题和菜单栏工具栏其他窗口窗体设计器和工程资源管理器属性窗口和工具箱掌握对象的基本概念对象的理解对象的三要素事件驱动掌握VB程序设计一般步骤12使用VisualBasic进行项目开发是在集成开发环境中完成,VB集成开发环境是VB程序开发的可视化编程界面。利用VB的集成开发环境可以很容易开发出交互性好的各种应用程序。2.1集成开发环境13启动VB:单击

"开始"----"程序----"MicrosoftVisualBasic6.0",就可以启动VisualBasic6.0并进入到

VisualBasic集成开发环境。

2.1集成开发环境新建工程对话框"新建工程"对话框有三个选项卡分别是新建、现存和最新:新建:可以建立新的工程或应用程序,如标准EXE工程、ActiveXEXE工程等;现存:可以打开原来已经存在的工程;最新:可以打开最近建立或使用过的工程。14VB集成开发环境:标题栏、菜单栏、工具栏、工程资源管理器、属性窗口、窗体布局窗口、窗体设计窗口、代码窗口和工具箱。2.1集成开发环境主窗口窗体设计工具箱窗口工程资源管理器属性窗口窗体布局窗口152.1.1

主窗口标题栏标题栏中的标题为"工程1-MicrosoftVisualBasic[设计]",说明此时集成开发环境处于设计模式,在进入其他状态时,方括号中的文字将作相应的变化。VB有3种工作模式:设计模式:可进行用户界面的设计和代码的编制,以完成应用程序的开发。运行模式:运行应用程序,这时不可编辑代码,也不可编辑界面。中断模式:应用程序运行暂时中断,这时可以编辑代码,但不能编辑界面。162.1.1

主窗口菜单栏菜单栏中包括13个下拉菜单,各菜单的作用如下:"文件":用于创建、打开、保存、显示最近的工程以及生成可执行文件。"编辑":用于输入或修改程序源代码。"视图":用于集成开发环境下程序源代码、控件的查看。"工程":用于控件、模块和窗体等对象的处理。"格式":用于窗体控件的对齐等格式化操作。"调试":用于程序调试和查错。"运行":用于程序启动、中断和停止等。"查询":用于数据库表的查询及相关操作。"图表":使用户能够用可视化的手段来表示表及其相互关系,而且可以创建和修改应用程序所包含的数据库对象。"工具":用于集成开发环境下工具的扩展。"外接程序":用于为工程增加或删除外接程序。"窗口":用于屏幕窗口的层叠、平铺等布局以及列出所有已打开的文档窗口。"帮助":帮助用户系统地学习和掌握VB的使用方法及程序设计方法。172.1.1

主窗口工具栏工具栏可以快速地访问常用的菜单命令。VB的标准工具栏如图所示,除此之外,VB还提供了编辑、窗体编辑器和调试等专用的工具栏。为了显示或隐藏工具栏,可以选择"视图"菜单的"工具栏"命令或将鼠标在标准工具栏处单击右键选取所需的工具栏。182.1.2

其他窗口工具箱窗口工具箱提供一组工具,用于设计时在窗体中放置控件生成应用程序的用户接口。系统启动后缺省的General工具箱就会出现在屏幕左边,上面有常用的"控件"。指示器标签框架复选框组合框水平滚动条时钟目录列表框形状图象框OLE图片框文本框命令按钮单选按钮列表框垂直滚动条驱动器列表文件列表LINEData192.1.2

其他窗口窗体设计窗口窗体设计窗口用于设计应用程序的界面。如图,在该窗口中可以添加控件、图形和图象来创建各种应用程序的外观。202.1.2

其他窗口代码窗口在设计模式中,通过双击窗体或窗体上任何对象或通过"工程资源管理器"窗口中的"查看代码"按钮来打开代码编辑器窗口。代码编辑器是输入应用程序代码的编辑器。注意:每个窗体设计窗口对应一个代码窗口。212.1.2

其他窗口属性窗口所有窗体或控件的属性如颜色、字体等,都可以通过属性窗口来修改。属性窗口由以下部分组成:对象列表框:单击其右边的箭头可拉出所选窗体包含的对象的列表。属性显示排列方式:有"按字母序"和"按分类序"两个按钮。前者以字母排列顺序列出所选对象的所有属性;后者按"外观"和"位置"等分类列出所选对象的所有属性。窗体属性名属性值222.1.2

其他窗口工程资源管理器窗口工程是指用于创建一个应用程序的文件的集合。工程资源管理器用于管理众多工程的窗口。工程资源管理器窗口上方有以下三个按钮:查看代码:切换到代码窗口,显示和编辑代码。查看对象:切换到模块的对象窗口。切换文件夹:工程中的文件在按类型分或不分层次显示之间切换。一个工程就是一个应用程序文件的集合,包括:.vbp:工程文件,每个工程有且只有一个工程文件,通过双击它可以打开已有工程;.frm:窗体文件,工程的每个窗体对应一个窗体文件,记载窗体及其上控件的属性等信息;其它文件:见书13面表2-3。232.1.2

其他窗口窗体布局窗口窗体布局窗口显示在屏幕右下角。用户可使用表示屏幕的小图像来布置应用程序中各窗体的位置。242.2面向对象程序设计的基本概念对象面向对象技术是基于对象概念的,一个面向对象的程序的每一个成分都是对象。程序是通过建立对象及对象之间的通信来执行的。对象是一个数据和代码的集合。如VB中窗体就是一个对象,窗体中任何控件也分别是一个对象。每个对象都有属性、事件和方法。小明窗体文本框按钮252.2面向对象程序设计的基本概念对象对象的属性对象都有自已的属性。它们是用来描述和反映对象特征的参数。例如:窗体名称(Name)、标题(Caption)、颜色(Color)、字体(FontName)等都是属性。对象属性设置的方法:方法一:在设计模式下,通过属性窗口直接设置对象的属性。方法二:在程序的代码中通过赋值实现,其格式为:

对象.属性=属性值 例如:Form1.Caption="显示"必须先选中对象,后设置属性;在属性窗口列出的属性中大多可采用系统缺省值。属性设置的两种方法适用于大部分属性,但有些属性只能用程序代码或属性窗口设置。通常把只能通过属性窗口设置的属性称为"只读属性"。262.2面向对象程序设计的基本概念对象对象的事件VB中,事件是预先定义好的能够被对象所识别的动作,是导致执行某过程的通知。如按下一个键、单击一下鼠标、选择一个菜单等都是一个事件。事件类型大致可以分为:键盘事件、鼠标事件和程序事件。键盘事件:用户按下键盘上的按钮后产生的事件。鼠标事件:用户移动、单击、双击和拖动鼠标时所产生的事件。程序事件:指VB程序在装入、打开和关闭一个窗体时所产生的事件。事件过程:是指附在该对象上的程序代码,是事件触发后处理的程序。编写事件过程的形式如下:

PrivateSub

对象名_事件名()

语句序列

EndSub

例如:PrivateSubcmdOk_Click()

cmdOk.FontSize=20'设置命令按钮的字体大小为20EndSub272.2面向对象程序设计的基本概念对象对象的方法对象的方法是对象的行为方式,即对象要执行的操作。方法是面向对象的,所以对象的方法调用一般要指明对象。对象方法调用形式:

[对象名.]方法[参数列表

]

如省略对象,表示当前对象,一般指窗体。对象是一个数据和代码的集合。其中数据就是对象的属性,代码就是对象的方法。

对象的三要素小明小兰属性姓名:小明年龄:20岁身高:1.6m姓名:小兰年龄:19岁身高:1.7m事件小明喊小兰,对小兰来说,"喊"就是一个事件。方法小兰向小明走来,"走"就是小兰一个方法。282.3VB可视化设计基本步骤创建VB应用程序有四个主要步骤:创建一个工程;界面设计;设置属性;编写代码;调试运行;保存并退出。292.3VB可视化设计基本步骤一个简单程序功能:当单击"显示"按钮时,文本框中出现"武汉科技大学外语外事职业学院",单击"清除"按钮时,文本框内的文字消失,单击"退出"按钮,对话框关闭。302.3VB可视化设计基本步骤一个简单程序创建一个工程单击"开始"----"程序"----"VB6.0"就可以启动VB6.0程序。在出现的"新建工程"对话框中选择"标准EXE",点"打开"按钮。新创建的工程包含两个主要的文件,一个是工程文件(.vbp),一个是窗体文件(.frm)。双击工程文件就可以打开该工程。312.3VB可视化设计基本步骤一个简单程序第一步:界面设计在这个程序中需要4个控件对象:分别是一个文本框控件和三个按钮控件。单击工具箱中的文本框控件按钮,当光标变成十字形后可以在窗体合适的位置拖动鼠标,画出一个矩形区域,表示当前控件的大小。松开鼠标后,刚刚出现的矩形区域就出现了一个文本框,文本框中默认出现文字Text1;或者双击文本框控件按钮也同样可以添加一个文本框控件,当选中某个控件对象时,会出现8个句柄,可以直接利用鼠标的拖动来调整控件大小,用同样的方法选择工具箱中的按钮控件按钮。在窗体上添加三个按钮。322.3VB可视化设计基本步骤一个简单程序第二步:设置属性控件属性属性值FormNameForm1Caption欢迎进入VisualBasic的世界!TextBoxNameText1Text空白CommandButtonNameCommand1Caption显示CommandButtonNameCommand2Caption清除CommandButtonNameCommand3Caption退出332.3VB可视化设计基本步骤一个简单程序第三步:编写代码PrivateSubCommand1_Click()'按钮Command1的Click事件过程Text1.Text="武汉科技大学外语外事职业学院"EndSubPrivateSubCommand2_Click()'按钮Command2的Click事件过程Text1.Text=""EndSubPrivateSubCommand3_Click()'按钮Command3的Click事件过程EndEndSub

双击按钮进入"代码"窗口。选择对象选择事件342.3VB可视化设计基本步骤一个简单程序第四步:调试运行当程序代码编写好了就可以调试了。点"启动"按钮或按F5按钮调试程序、排除错误直至正确运行。352.3VB可视化设计基本步骤一个简单程序保存并退出选择"文件"/"保存工程",分两部保存工程文件和窗体文件。保存窗体保存工程362.3VB可视化设计基本步骤分析事件驱动机制:以"用鼠标单击"按钮为例,如图:command1按钮发生了click事件用户单击"用鼠标单击"按钮系统调用Command1_Click事件过程来响应该事件。该代码被执行PrivateSubCommand1_Click()

语句块EndSub37练习第3章窗

体本章的学习要点窗体的结构窗体的属性、事件、方法多窗体

MDI窗体40窗体的结构与Windows下的窗口十分类似,在程序运行前,即设计阶段,称为窗体;程序运行后也可以称为窗口。3.1窗体的结构系统菜单窗体最小化按钮最大化按钮关闭按钮标题栏41[窗体名.]Caption=字符串窗体的属性Name:设置窗体的名称。所有对象都具有该属性;在同一范围内不允许该属性值相同;该属性只能通过属性窗口设置,在代码窗口中不能改变。Caption:设置窗体标题栏上显示的内容。在代码窗口修改该属性值的语法格式为:注意它与Name属性的区别3.2窗体的三要素NameCaptionCommand1.Caption="确定"课本17-18面中:对象名.属性名=属性值Sub对象名_事件名()对象名.方法[(参数)]42[窗体名].AutoRedraw={True|False}窗体的属性AutoRedraw:设置窗体被遮盖后是否要自动重绘窗体上的内容。语法格式为:BackColor、ForeColor:返回或设置窗体的背景颜色和前景颜色。属性值是一个16进制的常数;通常在编写代码时,常用Qbcolor或RGB函数为其设置颜色。3.2窗体的三要素Form1.BackColor=&HFF0000

'低字节到高字节依次

'表示红、绿和蓝的值Form1.BackColor=RGB(255,0,0)Form1.ForeColor=vbRedRGB颜色函数讲解

蓝红绿256等份256等份256等份Form1.BackColor=RGB(255,13,222)43窗体的属性BorderStyle

:设置窗体的边框样式。语法格式:3.2窗体的三要素窗体名.BorderStyle={0|1|2|3|4|5}属性值说明0-None窗体无边框1-FixedSingle含控制菜单、标题栏、最大、最小化按钮的固定单边框2-Sizable默认值,可调整的双线边框。3-FixedDouble含控制菜单、标题栏,无最大、最小化按钮、窗体大小固定的双线边框。4-FixedToolWindow只有关闭按钮、缩小的字体显示标题栏、窗体大小固定的工具窗口。5-SizableToolWindow只有关闭按钮,并用缩小的字体显示标题栏、窗体大小可变的工具窗口。注意:该属性只能在属性窗口中设置44窗体的属性Enabled:设置窗体是否被响应。语法格式:当该属性值为True(默认值)时表示窗体有效,能响应用户或系统事件;为False时表示窗体无效,不能响应,并且窗体上的所以控件都无效。3.2窗体的三要素[窗体名.]Enabled={True|False}45窗体的属性Font系列字体属性:设置窗体上文本的字体、字号、字形等样式。3.2窗体的三要素属性类型功能FontName字符型决定对象上正文的字体(缺省为宋体)FontSize整型决定对象上正文的字体大小FontBold逻辑型决定对象上正文是否是粗体FontItalic逻辑型决定对象上正文是否是斜体FontUnderline逻辑型决定对象上正文是否带下划线FontStrikeThru逻辑型决定对象上正文是否加一删除线46窗体的属性Height、Width:分别决定窗体大小的高度和宽度。Top、Left:表示窗体到屏幕上边框和左边框的距离。3.2窗体的三要素TopHeightLeftWidth原点(0,0)xy[窗体名].Left=1200[窗体名].top=120047窗体的属性ControlBox:取值为True或False,表示窗体左上角是否有控制菜单。Icon:返回或设置窗体左上角显示的图标或最小化时显示的图标,通常为.ICO格式的图标文件,仅当ControlBox属性值取True该属性才生效。MinButton

、MaxButton:设置窗体最小、最大化按钮是否有效。语法格式:3.2窗体的三要素[窗体名.]

MinButton={True|False}[窗体名.]

MaxButton={True|False}48窗体的属性Picture:设置窗体的背景图片。语法格式:Visible:设置窗体在执行时是否可见。语法格式:3.2窗体的三要素[窗体名.]

Picture=LoadPicture("图片文件名")[窗体名.]

Visible={True|False}49窗体的事件不同的对象对应不同事件的发生,VB中窗体有很多事件。在一个窗体的代码窗口中列出了所有窗体事件。3.2窗体的三要素在此选中对象列出选中对象事件50窗体的事件Activate:当窗体变为激活的当前窗口时,引发本事件。Click:当用户单击窗体时触发本事件。

DblClick:当用户双击窗体时触发本事件。Deactivate:当窗体失去激活状态,即另一个窗体成为当前窗口时,引发本事件。Load:当窗体被加载到内存时触发本事件。Load事件往往用于在启动程序时对属性和变量进行初始化。Unload

:当关闭窗体时,触发卸载事件,将窗体从内存中卸载。注意:Load事件发生时窗体是不活动的,而Activate事件发生时窗体是活动的,Print方法不能在不活动窗体上使用,因此Print不能用于Load事件中。3.2窗体的三要素

"双击"实际上触发两个事件,第一次按鼠标按钮时产生Click单击事件,第二次按鼠标按钮时产生DblClick事件。

PrivateSubForm_Click()

Form1.BackColor=vbRedEndSubPrivateSubForm_Click()

Form1.BackColor=vbRedEndSub当触发了Form对象的Click事件时,该事件过程Form_Click就会被执行。窗体名称为Form1,为何在其事件过程中用Form,详见课本18面。?51例3.1

Print在Load和Activate事件中的区别。PrivateSubForm_Load()Print"***"EndSubPrivateSubForm_Activate()Print"***"EndSub52窗体事件示例例:程序运行时,用户在窗体上输入字符时,窗体上显示输入结果。分析:添加什么事件过程在窗体上显示输入结果用什么代码当用户输入a时触发了Form_KeyPress事件过程,该过程的参数KeyAscii值是多少?通过什么方法在窗体上显示出a?代码:Form_KeyPress97PrivateSubForm_KeyPress(KeyAsciiAsInteger)PrintChr(KeyAscii)EndSubForm1.printchr(x)函数:将ASCII码转换为对应的字符;53窗体的方法在代码窗口中,输入"form1."后,会显示该窗体对象的所有属性和方法。3.2窗体的三要素对象的属性和方法属性方法54窗体的方法Show和Hide:分别用于显示和隐藏窗体。调用格式:

[窗体名.]Show[Style][窗体名.]Hide窗体名缺省,表示显示或隐藏当前窗体;Show方法的Style参数取值:vbModel(模式):不允许用户同时与其他窗体交互。vbModeless(无模式):允许用户同时与其他窗体交互。3.2窗体的三要素55窗体的方法Print:用于将文本输出到窗体的一行上。调用格式:

[对象名.]Print[输出项列表][{;|,}]对象除了窗体外,还可以是图片框(PictureBox)、Debug或打印机(Printer),若缺省对象名,表示将文本输出到当前窗体上。输出项列表:是由0个、1个或多个待输出的数值表达式或字符串表达式构成;当输出项是由多个项构成,则中间必须用逗号或分号分隔;若Print后什么都不跟,则表示输出一个空行。3.2窗体的三要素如下代码:

PrivateSubForm_Click()Print1,-2PrintPrint"We","study"EndSub标准格式56窗体的方法Print:用于将文本输出到窗体的一行上。调用格式:

[对象名.]Print[输出项列表][{;|,}]对象除了窗体外,还可以是图片框(PictureBox)、Debug或打印机(Printer),若缺省对象名,表示将文本输出到当前窗体上。输出项列表:是由0个、1个或多个待输出的数值表达式或字符串表达式构成;当输出项是由多个项构成,则中间必须用逗号或分号分隔;若Print后什么都不跟,则表示输出一个空行。3.2窗体的三要素如下代码:

PrivateSubForm_Click()Print1;-2PrintPrint"We";"study"EndSub紧缩格式注意:标准格式即参数以","分割,下一个输出项将与上一个输出项间隔14列;紧缩格式即参数以";"分割,下一个输出项将以紧凑格式,紧跟着上一个输出项输出。Print方法输出的位置是由窗体的绘图坐标CurrentX和CurrentY属性决定的,默认为对象的左上角(0,0)。该方法可以结合定位输出函数一起使用:Spc(n):在下一个输出项前插入n个空格;Tab(n):输出定位在绝对n列号上。代码:1197513111591317PrivateSubForm_Click()EndSub

PrintTab(11);"A"

PrintTab(9);"B";Spc(3);"B"

PrintTab(7);"C";Spc(3);"C";Spc(3);"C"

PrintTab(5);"D";Spc(3);"D";Spc(3);"D";Spc(3);"D"10864333333573.2窗体的三要素窗体的方法Cls方法:用于清除运行时窗体上或图形上的用Print方法生成的文本和图形。语法格式:

[对象名].Cls对象名可以是窗体或图片框。当对象名缺省时,表示清除当前窗体上的内容。 例如:Form1.ClsCls

Picture1.Cls583.2窗体的三要素窗体的方法Move(移动)方法:用于移动对象,并且可以在移动时变化对象的大小。语法格式:

[对象名.]MoveLeft[,Top[,Width[,Height]]]

其中,对象名可以是窗体和除时钟、菜单以外的所有控件。窗体名缺省(即未选对象名)时,默认为当前窗体。Move方法中的Left、Top、Width、Height4个参数,单位为twip(像素)。注意!P32

593.2窗体的三要素例:编写一个程序,实现功能:每单击窗体一次,窗体向右移动。思路:窗体向右移动是一个动作,应该执行什么方法;该动作是被什么对象的什么事件触发的?代码:

PrivateSubForm_Click()

Form1.MoveLeft+1500EndSubmove窗体clickForm1.MoveLeft+1500,top,Width+1500?每次移动并变大如何实现60例3.3窗体的简单应用编程实现:单击和双击窗体时分别改变标签和窗体标题栏的文字,单击单选按钮改变标签文字。界面设计对象属性属性值FormNameForm1Caption学习之道LabelNameLabel1Caption空白BackColor&H00FFC0C0&OptionButtonNameOption1Caption上课OptionButtonNameOption2Caption复习属性设置61编写代码PrivateSubForm_Click()‘窗体的单击事件过程

Label1.Caption="成功通过考试!"EndSubPrivateSubForm_DblClick()‘窗体的双击事件过程

Form1.Caption="欢迎你学习VB!!"EndSubPrivateSubOption1_Click()‘单选按钮的单击事件过程

Label1.Caption="听明白勤思考记下来!"EndSubPrivateSubOption2_Click()'单选按钮的单击事件过程

Label1.Caption="多上机善提问多总结!"EndSub623.3多窗体多窗体是在应用程序中有多个并列的普通窗体。多窗体的建立步骤:(1)建立第一个窗体,选择"新建"选项卡创建一个新窗体,若选择"现存"选项卡则添加一个属于其他工程的窗体。(2)通过选择"工程"→"添加窗体"或工具栏上的添加窗体按钮来创建另一个新窗体。633.3多窗体多窗体的运行顺序设置:选择"工程"菜单中的最后一项"工程1属性"命令,在弹出的对话框中改变启动对象64例3.4设计一个多窗体,实现两个界面的交换。为程序添加窗体Form2,Form1窗体加载一个图片,Form2窗体加载时为空白。65单文档界面SDI(SingleDocumentsInterface)任何时刻都只能打开一个文档,若要打开别的文档,则必须先关闭原来的文档。多文档界面MDI(MultipleDocumentsInterface),可同时打开多个文档,每个文档占用一个窗口,用户可以在已经打开的窗口之间切换,简化了文档之间的信息转换。3.3MDI窗体多文档界面通常可以分为一个应用程序(父窗体)中包含多个文档(子窗体)。66创建MDI窗体新建一个工程。此时工程中包含一个窗体Form1。创建MDI窗体。选择"工程"----"添加MDI窗体----"打开",即创建MDI父窗体MDIForm1。建立MDI子窗体。双击工程资源管理器窗口中的Form1,在属性窗口中找到MDIChild属性,把它的值设置为True,创建MDI子窗体。改变启动对象。在"工程"----"工程属性"中改变启动对象,把MDIForm1窗体设置为启动窗体。3.3MDI窗体MDI窗体特性:父窗体只能有且必须有一个;子窗体至少有一个;所有的子窗体无论如何操作都不能移出MDI窗体;当最大化一个子窗体时,它的标题和父窗体的标题组合在一起,显示在父窗体的标题栏上;当父窗体最小化时,所有子窗体也被最小化,只有父窗体的图标会出现在任务栏中,父窗体从最小化回复时,子窗体也恢复原来的状态。67例3.5MDI窗体的应用设计界面属性设置对象属性属性值MDIFormNameMDIForm1Caption父窗体FormNameForm1Caption子窗体1MDIChildTrueFormNameForm2Caption子窗体2MDIChildTrueFormNameForm3Caption子窗体3MDIChildTrue68例3.5MDI窗体的应用代码编写MDIform窗体加载事件:PrivateSubMDIForm_Load()

Form1.ShowForm2.ShowForm3.ShowEndSub69练习第4章常用标准控件本章的学习要点标签、文本框的常用属性、事件、方法命令按钮的常用属性、事件和方法图片框、图像框的属性、事件、方法;图形文件的载入框架的属性和功能复选框、单选按纽的常用属性、事件、方法列表框、组合框的常用属性、事件、方法滚动条、计时器的常用属性、事件、方法72工具箱控件图解4.1

概述指示器标签框架复选框组合框水平滚动条时钟目录列表框形状图象框OLE图片框文本框命令按钮单选按钮列表框垂直滚动条驱动器列表文件列表LINEData73控件是VB中预先定义好了的、程序中能够直接使用的对象,每个控件都有自己的属性、事件和方法。VB有三种控件:标准控件:存在于工具栏中,不可删除。被封装在VB的.exe文件中,不可以删除。ActiveX控件:由第三方制造的,以独立文件存在,扩展名为.ocx,使用前必须添加到工具栏中。可插入的对象:如Execl,Word等能添加到工具栏中,所以也是控件。向工具箱中添加控件的方法如果想使用标准工具箱中没有的控件,则必须将该控件添加到工具箱中。添加过程如下:

4.1

概述74向窗体上添加控件,有三种方法:方法一:单击工具箱中的某控件图标,该图标反相显示;移动鼠标至窗体上,光标变为"+",按下鼠标左键不放,向右下方拖动鼠标;当控件为合适大小时松开鼠标,一个控件就添加好了。方法二:双击工具箱中的某控件图标,在窗体中就添加了该控件,与第一种方法不同的是,所添加控件大小、位置是固定的。方法三:按如下步骤操可以添加多个某种类型的控件:按住Ctrl键,不要松开;单击工具箱中要画的控件的图标,然后松开Ctrl键;按第一种方法在窗体上画出控件(可以画一个或多个);画完控件后,单击工具箱中的指针图标(或其他图标)。4.1

概述75标签控件主要用于标注没有Caption属性的控件的用途或向用户显示运行结果的。标签在运行时不具有交互性,不能响应用户事件。标签控件的属性Alignment:设置标签中文本的对齐方式。语法格式:4.2标签(Label)对象名.Alignment={0|1|2}属性值说明0(默认值)从左边开始显示标题,即左对齐1从右边开始显示标题,即右对齐2从中间开始显示标题,即居中对齐76标签控件的属性AutoSize:设置标签是否能够自动调整大小以显示所有的内容。语法格式:

其中:属性值为False(默认值)表示显示控件的原始大小,属性值为True表示根据控件中的内容自动调整控件大小。BackStyle:设置标签的背景样式。语法格式:

其中:属性值为1(默认值)表示背景是不透明的;属性值为0表示背景是透明的。4.2标签(Label)对象名.AutoSize={True|False}对象名.BackStyle={0|1}77标签控件的属性BorderStyle:设置标签的边框样式。语法格式:

其中:属性值为0(默认值)表示无边框;属性值为1表示单线边框。Caption:设置标签的文本内容。语法格式:

4.2标签(Label)对象名.Caption[=字符串]对象名.BorderStyle={0|1}78标签控件的事件和方法标签具有Click(单击),DbClick(双击)等事件,但一般不需要编写代码。标签的方法中常用的只有Move,其基本语法如下:

其中:left,top,width,height分别表示移动目的位置的坐标和大小。left为必要参数,其他三个为可选参数。4.2标签(Label)对象名.Move

left,top,width,height79例4.1设计一个界面说明标签的基本属性的使用界面设计属性设置对象名属性名属性值Label1Caption默认值Label2Caption学习VBAutoSizeTrueBackStyle0(透明)BorderStyle1(单线边框)运行结果80文本框是一个文本编辑区域,主要用于接收用户的输入、输出、修改等信息,可以输入单行文本,也可以输入多行文本,在程序运行过程中具有良好的交互性。文本框控件的属性Name:设置文本框的名称。Text:设置文本框中显示的文本内容。语法格式:

4.3文本框(TextBox)对象名.Text=字符串81文本框控件的属性Locked:设置文本框是否可以被编辑。语法格式:

其中:属性值为False(默认值)表示文本内容可以编辑;属性值为True表示文本内容只能读但不能修改。MaxLength:设置文本框中输入的字符串最大长度。其中:属性值为0(默认值)表示文本框中字符串的长度为任意值,只受操作系统内存的限制;属性值为大于0的整数,该整数表示能够输入的最大字符数目。4.3文本框(TextBox)对象名.Locked={True|False}82文本框控件的属性MultiLine:设置文本框是否可以输入多行文本。语法格式:其中:属性值为False(默认值)表示只能单行显示,不能显示多行;属性值设置为True,表示可以多行显示文本,若文本行数超过文本框宽度,系统会自动为文本框添加滚动条。PasswordChar:设置是否在文本框中显示用户所输入的字符串。语法格式为:其中:该属性如被设置为某一字符,如"*",则无论在Text属性值中输入什么,在文本框中都只显示"*"。4.3文本框(TextBox)对象名.MultiLine={True|False}对象名.PasswordChar="*"注意:该属性有效的前提是MultiLine属性必须设置为False。83文本框控件的属性ScrollBars:设置文本框滚动条的模式。语法格式:

4.3文本框(TextBox)对象名.ScrollBars={0|1|2|3}属性值说明0(默认值)表示没有滚动条1表示只有水平滚动条2表示只有垂直滚动条3表示既有水平滚动条又有垂直滚动条84文本框控件的属性SelLength、SelStart和SelText:控制文本框中的插入点和文本选定操作,这些属性仅能在运行时使用。语法格式:

其中:SelLength设置选定文本的长度,只能在代码中使用,若值为0,表示未选中任何内容。SelStart设置选定文本的起始点,只能在代码中使用,第一个字符位置是0。SelText设置当前选定文本的内容,只能在代码中使用4.3文本框(TextBox)对象名.SelLength=数值对象名.SelStart=数值对象名.SelText=字符串Text1.SelStart=1Text1.SelLength=3Text2.Text=Text1.SelText85文本框控件的事件Change:当用户改变文本框的内容时,该文本框的Change事件被触发,该事件对应的代码结构如下:4.3文本框(TextBox)

PrivateSubText1_Change()…EndSub86文本框控件的事件KeyPress:当文本框被选中时,按任意键该文本框的KeyPress事件被触发,该事件对应的代码结构如下:

其中:KeyAscii是按键事件的参数,反映了按键对应键名的ASCII码值,输入数据时,通过KeyPress事件过程来识别输入字符是否正确,达到判断检查的功能。一般经常用以上两个事件过程中设置代码,来实现对输入文本框中的内容进行检查、验证和确认4.3文本框(TextBox)

PrivateSubText_KeyPress(KeyAsciiAsInteger)…EndSub874.3文本框(TextBox)例:判断文本框中输入的内容是否为数字按键盘上某键,如果输入的值不是0~9之间的数字,则在窗体上显示相关的提示信息,否则没有任何提示。PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfKeyAscii<Asc("0")OrKeyAscii>Asc("9")ThenPrint"你输入的不是数字"EndIfEndSub88文本框控件的方法SetFocus:可以设置焦点,其获得焦点的显示效果是焦点(光标)在文本框中闪动。语法格式:让指定的对象获得焦点。设置焦点,本方法可使指定的文本框(或其他有聚焦能力的对象)成为焦点,也就是当前文本框,成为焦点的文本框中具有闪动的光标.4.3文本框(TextBox)对象名.SetFocus89例设计一个程序可检查密码是否正确,密码为"12345"4.3文本框控件(TextBox)PrivateSubCommand1_Click()pass=Text1.Text

Ifpass="12345"ThenLabel2.Caption="密码正确!"

ElseLabel2.Caption="密码错,重新输入!"

EndIfEndSub90命令按钮主要用来执行某一功能,通常在命令按钮的Click事件中编写一段程序,当用户用鼠标单击这个按钮时,就会启动这段程序,执行某一特定的功能。命令按钮控件的属性Caption:设置命令按钮的标题。Default:设置命令按钮是否为默认按钮,即当运行程序时,用户按回车键时,就激活它。语法格式:其中,属性值为False(默认值)表示该按钮不响应Default事件;属性值为True表示该命令响应Default事件,即当用户按Enter键时,与单击该按钮效果相同。Cancel:设置命令按钮是否为Cancel按钮,即当用户按Esc键时,是否触发它的Click事件。语法格式:4.4命令按钮(CommandButton)对象名.Cancel={True|False}对象名.Default={True|False}注意:在一个窗体内,只能有一个Default命令按钮,也只能有一个Cancel命令按钮;91命令按钮控件的属性Enabled:设置命令按钮是否能被按下。语法格式:

其中:属性值为True(默认值)表示该按钮能被响应;属性值为False表示该按钮不能被响应,以灰色显示。Picture:设置命令按钮上显示的图形。语法格式:

4.4命令按钮(CommandButton)对象名.Enabled={True|False}对象名.Picture=LoadPicture("图形文件名")92命令按钮控件的属性Style:设置命令按钮的类型。语法格式:

ToolTipText:设置当鼠标在命令按钮上暂停时显示的文本。4.4命令按钮(CommandButton)对象名.Style={0|1}属性值说明0(默认值)表示为标准按钮,只显示Caption属性设置的文本1表示为图形风格,只显示由Picture属性指定的图片对象名.ToolTipText=字符串93命令按钮控件的事件Click、mousedown、mouseup:当单击鼠标时就会触发该三个事件。他们触发的顺序为Click、mousedown、Click最后才是mouseup

事件。

4.4命令按钮(CommandButton)对象名.Default={True|False}注意:Mousedown和mouseup只能通过单击鼠标触发,而Click通过单击鼠标触发外,还可以如下方法触发:在按钮获得焦点时按空格或回车键。944.4命令按钮(CommandButton)

命令按钮的主要方法SetFocus:设置焦点。设置为焦点的按钮在其表面有一个虚边框

注意:

命令按钮不支持双击事件。BackColor属性和Picture属性在Style属性值为1(图形方式)下,才能显示出来。954.4命令按钮(CommandButton)

PrivateSubCommand1_Click()Form1.MoveLeft+500,Top-500,Width+500,Height+500EndSubPrivateSubCommand2_Click()Form1.MoveLeft-500,Top+500,Width-500,Height-500EndSubPrivateSubCommand3_Click()EndEndSub96例:设计一个窗体,说明命令按钮的基本属性、事件、方法的使用。4.4命令按钮(CommandButton)界面设计属性设置见课本P52运行结果974.4命令按钮代码设计:

PrivateSubCommand1_Click()Label4.Caption="+"Text3.Text=Val(Text1.Text)+Val(Text2.Text)EndSubPrivateSubCommand2_Click()Label4.Caption="-"Text3.Text=Val(Text1.Text)-Val(Text2.Text)EndSubPrivateSubCommand3_Click()Label4.Caption="*"Text3.Text=Val(Text1.Text)*Val(Text2.Text)EndSubPrivateSubCommand4_Click()Label4.Caption="/"Text3.Text=Val(Text1.Text)/Val(Text2.Text)EndSub984.5图形控件VB中的图形控件分为图片框(PictureBox)、图像框(Image)、直线控件和形状控件。图形控件的使用能美化界面和增加界面的趣味性。图片框图片框控件可以用来显示.bmp、.ico、.jpeg、.jpg、.gif等图片类型的文件,而且可以绘制图形、显示文本或计算结果,还可以作为容器放置其它控件。

994.5图形控件图片框常用属性Picture:设置图片框控件中显示的图片的文件名。在界面设计时,可直接利用属性窗口中的Picture属性设置相应图片的目录装入图片;在程序运行时,可使用LoadPicture函数装载图片,语法格式为:对象名.Picture=LoadPicture("图形文件名")1004.5图形控件图片框常用属性Align:设置图片框在窗体中的显示方式,语法格式:

对象名.Align={0|1|2|3|4}属性值说明0-None默认值,表示无特殊显示1-AlignTop表示图片框停靠在窗体上端并与窗体一样宽2-AlignBottom表示图片框停靠在窗体底部并与窗体一样宽3-AlignLeft表示图片框停靠在窗体左端并与窗体一样高4-AlignRight表示图片框停靠在窗体右端并与窗体一样高1014.5图形控件图片框常用属性AutoSize:设置控件是否能自动调整大小以显示图片所有的内容。语法格式:其中:属性值为False(默认值)表示图片框不能自动改变大小以适应其中的图形,保持原始尺寸,如果图形比图片框大,则超出的部分将被剪切掉;属性值为True表示图片框可以自动调整图片框大小以显示图片的全部内容。对象名.AutoSize={True|False}1024.5图形控件图片框常用属性CurrentX和CurrentY:设置下一次显示或绘图的水平坐标和垂直坐标。语法格式:将对应的数值作为下次输出的坐标位置。[对象.]CurrentX=数值[对象.]CurrentY=数值1034.5图形控件图片框图片框控件的事件图片框常用的事件是Click和DblClick,分别是单击和双击图片框时发生的事件。图片框控件的方法图片框常用的方法有Print、Cls、Move和SetFocus。同时,图片框支持Pset、Point、Circle和Line等绘图方法。装载图片装载图片有三种方法:方法1:在界面设计时,通过Picture属性装载图片,在Picture属性中选择需要装入的图形文件名。方法2:在界面设计时,利用菜单中的"编辑"→"粘贴"功能,将剪贴板中的图片粘贴到图形控件中。方法3:在程序运行期间,用LoadPicture函数装载。1044.5图形控件图片框卸载图片语法格式:保存图片SavePicture函数的功能是用来保存在图片框中处理过的图像。语法格式:

例如:SavePicturePicture1.Image,"aa.bmp"

[对象.]Picture=LoadPicture()SavePicture对象名.Image,保存路径105例:设计一个窗体,通过命令按钮单击实现两个图片框控件中图片之间的切换。4.5图形控件界面设计和运行结果1064.5图形控件例:设计一个窗体,通过命令按钮单击实现两个图片框控件中图片之间的切换。对象属性属性值CommandButtonNameCommand1Caption交换PictureBoxNamePicture1Pictured:\6.jpgPictureBoxNamePicture1Pictured:\7.jpg属性设置如下表:107例:设计一个窗体,通过命令按钮单击实现两个图片框控件中图片之间的切换。4.5图形控件代码编写如下PrivateSubCommand1_Click()

Picture1.Picture=Picture2.PicturePicture2.Picture=LoadPicture("d:\6.jpg")EndSub1084.5图形控件VB中的图形控件分为图片框(PictureBox)、图像框(Image)、直线控件和形状控件。图形控件的使用能美化界面和增加界面的趣味性。图像框图像框也是用来显形图片,如.bmp、.ico、.jpeg、

.jpg、.gif等图片格式。其装载显示图片的速度较图片框快。

1094.5图形控件图像框常用属性Picture:设置图像框控件中显示的图形。图像框的Picture属性与图片框使用方法相同,既可以通过属性窗口设置图像框的Picture属性来添加图片,也可以通过LoadPicture函数来装载图片。Stretch:设置是否调整图形的大小以适应图像框控件。图像框没有Autosize属性,但可以使用Stretch属性来拉伸图像大小,使其适应图像框的大小。其中:属性值为False(默认值)表示图像框会自动调整大小,以适应图形;为True表示,图形自动调整大小,以适应图像框。1104.5图片控件图像框图像框控件的事件和方法图像框常用的事件和方法都不多。常用的事件有:DbClick、Click、MouseDown、MouseMove、MouseUp。常用的方法有:Move方法。图片框和图像框的区别:图片框可以作为"容器",可以存放其他控件,图像框不可以;图片框可以通过Print方法输出文本也可以用绘图方法绘制图形,图像框不可以;图像框比图片框占用内存少,显示速度快,如只显示图片则优先使用图像框;图片框有Autosize属性,而图像框有Stretch属性111例:设计一个窗体,说明图像框中Stretch属性的应用。4.5图片控件界面设计112例:设计一个窗体,说明图像框中Stretch属性的应用。4.5图片控件属性设置见课本如下对象属性属性值CommandButtonNameCommand1Caption交换PictureBoxNamePicture1PictureBoxNamePicture2VisibleFalseImageNameImage1StretchTrue113例:设计一个窗体,说明图像框中Stretch属性的应用。4.5图片控件代码编写如下PrivateSubForm_Load()Picture1.Picture=LoadPicture("C:\JadeVista.jpg")Image1.Picture=LoadPicture("C:\风景06.jpg")EndSubPrivateSubCommand1_Click()Picture2.Picture=Picture1.PicturePicture1.Picture=Image1.PictureImage1.Picture=Picture2.PictureEndSub1144.6框架和选择控件框架(Frame)在VB中,可以作为其他对象容器的有窗体、图片框和框架。框架的主要作用是将窗体上的控件进行分组,让窗体界面整齐。框架控件的属性Caption:设置框架的标题,说明框架的功能。Enabled:设置框架及框架内控件是否可用。属性值为True(默认值)表示框架可用,属性值为False则表示框架不可用且上面的控件也不可用。Visible:设置框架及框架内控件是否可见。1154.6框架和选择控件框架(Frame)向框架添加控件的方法先框架后控件:先添加一个框架,在框架处于激活状态时,在工具栏中选择要添加的控件添加到框架中。先控件后框架:即添加窗体中已存在的控件到框架中。先添加一个框架,然后剪贴窗体中要添加的控件并粘贴到框架中。判断一个控件是否已添加到框架上,主要是看移动框架时该控件是否也跟随一起移动。1164.6框架和选择控件单选按钮(OptionButton)单选按钮控件是多选一控件,只能从多个选项中选择一个,各选项间的关系是互斥的,同一时刻只能选择同一组中的一个单选按钮。单选按钮控件的属性Caption:设置单选按钮的标题。Alignment:设置单选按钮中文字的对齐方式。语法格式:其中:属性值为0(默认值)表示靠左对齐,圆形按钮位于控件的左边,文字显示在右边;属性值为1表示靠右对齐。对象名.Alignment={0|1}1174.6框架和选择控件单选按钮(OptionButton)单选按钮控件的属性Value:设置单选按钮在执行时是否被选中。语法格式:

其中:属性值为False(默认值)表示单选按钮处于未选中状态;为True表示单选按钮被选中。在一组单选按钮控件中,有且只有一个单选按钮能被选中,该控件的Value值变成True的同时,其他控件的Value属性将自动变成False。对象名.Value={True|False}1184.6框架和选择控件单选按钮(OptionButton)单选按钮控件的属性Style:设置单选按钮的显示方式。语法格式:

其中:属性值为0(默认值)表示单选按钮用标准方式(Standard)显示;为1表示单选按钮用图形方式(Graphical)显示。此属性与命令按钮的Style属性相似。对象名.Style={0|1}1194.6框架和选择控件单选按钮(OptionButton)单选按钮控件的属性Picture:给单选按钮装载图形。

注意:只有在Style属性设置为图形方式时Picture属性才有效。1204.6框架和选择控件单选按钮(OptionButton)单选按钮控件的事件单选按钮的常用事件为Click,当用户在一个单选按钮上单击时发生。1214.6框架和选择控件例4.9设计一个窗体选择不同字体、不同字号的选项,文本框的文字会产生相应的变化。界面设计属性设置见书P601224.6框架和选择控件代码设计:

PrivateSubOption1_Click()

Label1.FontName="宋体"EndSubPrivateSubOption2_Click()

Label1.FontName="隶书"EndSubPrivateSubOption3_Click()

Label1.FontName="黑体"EndSubPrivateSubOption4_Click()

Label1.FontSize=30EndSubPrivateSubOption5_Cl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论