1、4.4.6位置属性CurrentX和CurrentY84.4.7窗体之间的数据存取94.5基本的窗体操作104.5.1添加窗体:104.5.2移除(清除)窗体104.5.3 END语句114.5.4多窗体的启动(显示)顺序114.6多文档程序144.6.1多文档程序的建立154.6.2主窗体与子窗体的标题164.6.3主窗体与子窗体的菜单174.7窗体设计举例17练习创建一个窗体1837第四章 窗体学习目标1. 学会在应用程序中通过编程来调用和卸载工程中的窗体。2. 掌握有关窗体操作的语句和方法。3. 理解区别Unload和Hide方法。4. 了解启动窗体的概念。学习重点 有关窗体操作的语句和
2、方法。在VB中建立一个程序主要包括两部分工作,即:设计窗体和编写代码。前面已对窗体做了一个简单介绍,编写VB程序首先要根据需要创建一个良好的可视化界面,因此VB程序界面是由窗体(Form)和一些必要的控件元素(Control)构成的。由于VB属于面向对象编程,也可以将窗体、控件都称为对象。窗体是窗体设计器窗口的简称,是应用程序面向用户的最终窗口。窗体也是一种对象,由其属性定义外观,用方法定义其行为,通过事件设定与用户实现交互。因此,设计窗体也就是设计一个应用程序的操作界面。当启动一个新的工程文件时,VB自动创建一个带图标的新窗体,命名为“Form1”。窗体内带有网点(称为网格)的窗口,这就是用
3、户的窗体,一般也是程序运行时的主窗口。重新对该窗体大小的调整及属性值设置等操作,称为定制窗体。对窗体、控件的定制,在设计期间称为设计时,程序运行期间称为运行时。4.1窗体的结构当启动一个标准 EXE程序后,窗体设计器中会出现一个默认的窗体。可以发现它的外观大致与Windows中记事本窗口一样,其窗体右上角也有最小化、最大化、关闭三个按钮。如图4-1所示:图4-1系统控件菜单:Form1.ControlBox,点击“图标”它可以弹出控制菜单命令。标题栏:Form1.Caption,显示的窗口标题,如本例中的“Form1”。最小化按钮:Form1.MinButton 。最大化按钮:Form1.Ma
4、xButton 。4.2窗体属性窗体属性决定了窗体的外观,如大小、颜色和标题等。对窗体属性设置还可以改变窗体的结构。4.2.1窗体基本属性1. 名称(Name) “名称”是任何对象(窗体、控件)都具有的标识名,在属性窗口定义对象(窗体、控件)名称,以便在程序中引用。对于任何一个可以在属性窗口设置其属性的对象,必须设置该属性的值。VB自动为每一个对象给定一个缺省值。窗体名称“Name”,是窗体的标识名,其属性的缺省值为 FormX(X为编号,从1,2,依次顺延)。对于给VB中所有对象(窗体、控件)“名称”命名,都应按如下规则:1) 必须以字母或汉字开头;2) 可包括字母、数字和下划线,不能有空格
5、或标点符号;3) 最大长度为40个字符;4) 不能使用与公共对象相同的名字,例如 Clipboard、Screen 或 App。虽然窗体名称命名可以是一个关键字、属性名字、或别的对象的名字,但这会在代码中产生冲突,因此不要使用。5) “名称”只具有只读属性,它只能在程序设计阶段设置,不能在运行期间改变。名称不会显示在窗体上。 在简单的程序里,给创建的对象命名不是很必要,可以直接使用VB为每一个对象给定的缺省值(默认名称)。但在有几十个对象(控件)的复杂窗体里,使用对象的缺省值,会让你用更多的时间去区分它们是那类控件。为了能见名知意,提高程序可读性,VB推荐由三个小写字母的前缀和一个以第一个字母
6、为大写的描述性单词组成的名字。推荐的前缀见下表:对象前缀例子窗体(Form)frmFrmFirst确认框(CheckBox)chkChk1组合框(ComboBox)cboCbo1命令钮(CommandButton)cmdCmdExit数据库控件(DataControl)datDat1目录列表框(DirectoryList Box)dirDirTree驱动器列表框(DriveList Box)drvDrvDisk文件列表框(FileList Box)filFilDocuments框架(Frame)fraFraButtons水平滚动条(HorizontalScroll Bar)hsbHsbScro
7、ll图形(Image)imgImg1标签(Label)lblLbl1线(Line)linLin1列表框(ListBox)lstLst1菜单(Menu)mnuMnu1选项钮(OptionButton)optOptButton1图片框(PictureBox)picPic1几何图形(Shape)shpShp1文本框(TextBox)txtTxt1垂直滚动条(VerticalScroll Bar)vsbVsbScroll2. AutoRedraw(自动重画)该属性决定窗体被隐藏或被另一窗口覆盖之后,是否重新还原该窗体被隐藏或覆盖以前的画面。即是否重画如Circle、Line、Pset和Print等方法
8、的输出。该属性可以通过属性窗口设置如图4-2所示,其属性值为True时,可以重新还原该窗体以前的画面;若为False时,则不重新还原。默认属性为 False。常用于多窗体程序设计中。该属性的设置也可以在运行时通过代码进行设置,语句格式为:窗体名称.AutoRedraw=Boolean 图4-2例如:有两个窗体Form1和Form2,先加载窗体Form1会在窗体中央画许多同心圆,单击窗体Form1会显示窗体Form2,当单击窗体Form2时卸载窗体Form2,观察窗体Form1上画的许多同心圆有无改变。程序如下:Private Sub Form_Click() 窗体1程序 Form2.ShowE
9、nd SubPrivate Sub Form_ load() 窗体中央画许多同心圆Form1.ShowDim X, Y, R, LScaleMode = 3 以像素为单位X = Form1.ScaleWidth / 2 X 位置Y = Form1.ScaleHeight / 2 Y 位置If X Y Then L = Y Else L = X For R = 0 To L 半径 Circle (X, Y), R, RGB(Rnd * 255, Rnd * 255, Rnd * 255) Next RPrivate Sub Form_Load() Dim R For R = 0 To 10 Pr
10、int sssssssssssssssssssssssssssssssssss窗体2程序Private Sub Form_click() Unload Form2 卸载窗体注:ScaleWidth和ScaleHeight属性返回或设置“对象”(此例题“对象”是窗体)内部的水平或垂直度量单位。ScaleMode属性,返回或设置使用图形方法或调整控件位置时一个值,该值指示对象坐标的度量单位。3. BackColor(背景色)与 ForeColor(前景色)BackColor属性用于设置窗体的背景颜色,如图4-3所示; ForeColor属性用于设置在窗体里显示的图片或文本的颜色,即用来指定图形或文
11、本的前景色,如图4-4所示。图4-3 图4-4它们用十六进制数指定颜色,在语句中颜色的表现形式为:&HBBGGRR&说明:。BB 指定蓝颜色的值,GG 指定绿颜色的值,RR 指定红颜色的值。每个数段都是两位十六进制数,即从 00 到 FF。在程序代码中可以用Windows 运行环境的红-绿-蓝 (RGB) 颜色方案,使用调色板或在代码中使用 RGB 或 QBColor 函数指定标准RGB颜色。RGB 函数是用来指定颜色,多数情况下用十六进制数指定颜色,分别定义了红、绿、蓝三种颜色的值。红、绿、蓝三种成分都是用 0 到 255 (&HFF) 之间的数表示。因此,可以用十六进制数按照下述语法来指定
12、颜色,即&例如:将窗体Form1的背景色设置为红色,则可使用下面四种方法: Form1.BackColor = RGB(255, 0, 0) RGB 函数 Form1.BackColor = &HFF& 用十六进制数指定颜色Form1.BackColor = QBColor(12) QBColor()函数Form1.BackColor = vbRed VB提供的颜色常数QBColor 函数返回一个 Long数据类型,用来表示所对应颜色值的 RGB 颜色码。语句格式为:QBColor(color)color 参数代表使用于早期版本的 Basic(如 Microsoft Visual Basic for MS-DOS 以及 Basic Compiler)的颜色值。QBColor 函数返回值指定了红、绿、蓝三原色的值,用于设置成 VBA中RGB 系统的对应颜色。color 参数是一个界于 0 到 15 的整型。color 参数设置值见下表:值颜色黑色8灰色1兰色9亮兰色2绿色10亮绿色3青色11亮青色4红色12亮红色5洋红色13亮洋红色6黄色
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1