VB常用的窗体事件
- 格式:docx
- 大小:16.56 KB
- 文档页数:2
VB常用属性方法事件在Visual Basic中,有许多常用的属性、方法和事件可以用于开发应用程序。
下面是一些常用的属性、方法和事件的说明:属性:1. Name属性:用于获取或设置控件的名称。
2. Text属性:用于获取或设置控件的显示文本。
3. Enabled属性:用于获取或设置控件是否可用。
4. Visible属性:用于获取或设置控件是否可见。
5. Width和Height属性:用于获取或设置控件的宽度和高度。
6. Top和Left属性:用于获取或设置控件的上边距和左边距。
7. BackColor属性:用于获取或设置控件的背景颜色。
8. ForeColor属性:用于获取或设置控件的前景颜色。
9. Font属性:用于获取或设置控件的字体。
10. TextAlign属性:用于获取或设置文本框中文本的对齐方式。
方法:1. MessageBox.Show方法:用于显示一个消息框,可以用于显示提示信息或错误信息。
2. Console.WriteLine方法:用于在控制台窗口中输出文本。
3. SqlConnection.Open方法:用于打开一个数据库连接。
5. StreamReader.ReadLine方法:用于从文本文件中读取一行文本。
6. StreamWriter.WriteLine方法:用于向文本文件中写入一行文本。
7. Convert.ToInt32方法:用于将一个字符串转换为整数。
8. Math.Max方法:用于返回两个数值中较大的一个。
9. String.ToUpper方法:用于将字符串转换为大写。
10. Array.Sort方法:用于对数组中的元素进行排序。
事件:1. Click事件:在单击控件时引发,用于响应用户的点击操作。
2. Load事件:在窗体或控件加载时引发,用于初始化界面或加载数据。
3. KeyPress事件:在用户按下键盘按键时引发,用于响应键盘输入。
4. MouseMove事件:在鼠标移动时引发,用于跟踪鼠标位置。
课题:Visual Basic窗体事件、方法班级组别姓名教师评价: 编制人:李鹏飞审核人:杨宇虹【学习目标】1、掌握窗体的常用方法2、掌握窗体的常用事件重点:掌握窗体的常用事件、方法难点:掌握窗体的常用事件、方法【预习案】【使用说明与学法指导】1.用20分钟左右的时间,阅读探究课本的内容,熟记基础知识。
自主高效预习,提升自己的阅读理解能力.2.完成教材助读设置的问题,然后结合课本的基础知识和例题,完成预习自测题.3.将预习中不能解决的问题标出来,并写到后面“我的疑惑”处.一、相关知识:1.VB是由公司开发,所以VB中的窗体与Windows系统下的窗体结构什么类似,操作也基本相同。
2.窗体是VB中非常重要的一个对象,一个应用程序至少要有个窗体。
3、窗体是用来装载其他控件的容器,是载体。
二、教材助读:平时在Windows操作中,我们可以对Windows窗口进行哪些操作?三、预习自测:(一)概念探究:窗体的概念:(二)基础探究:1、窗体由哪几部分组成?2、窗体的主要属性由哪几个?【我的疑惑】【探究案】一、质疑探究(一)基础知识探究【问题探究】2、字体属性集4、注意事项(1)窗体的Name属性,默认名称为:Form1,该属性是只读属性,一旦确定就不可修改。
(2)VB中所涉及的尺寸单位为:缇(twip),1厘米=567缇。
(3)颜色的表示方法:第一种:VB+颜色,如红色(vbRed),黄色(vbYellow),蓝色(vbBlue)第二种:使用RGB函数,其格式为:RGB(R,G,B),分别代表红、绿、蓝三种颜色,其值范围为:0至255。
(4)字体颜色属性为:ForeColor,不存在FontColor属性。
三、我的知识网络图——归纳梳理、整合内化四、当堂检测1、在VB中,只改变控件的位置,应设置下列()属性。
A、Height和WidthB、Height和TopC、Left和TopD、Left和Width2、假定已经为窗体Form1装入了一张图片作为背景,为了清除该图片,应该采用的方法是()A、选择图片,然后按Del键B、执行语句Form1.Picture=LoadPicture(“”)C、执行语句Form1.Picture=””D、选择窗体,在属性窗口中选择Picture属性,然后按回车键3、以下能在在窗体Form1标题栏中显示“第一个窗体”的语句是()A、=”第一个窗体”B、Form1.Title=”第一个窗体”C、Form1.Caption=”第一个窗体”D、Form1.Text=”第一个窗体”4、在VB中常用()属性来设置字体的颜色。
一、VB程序开发的一般步骤:1、建立用户界面2、设置对象属性3、编写代码二、VB窗体和常用控件1、窗体Font中:FontName、FontSize、FontBold、FontItalic、FontUnderline、FontStrikethru 〔字体、字号、加粗、倾斜、下划线、删除线〕2〕窗体常用事件4〕窗体常用方法2、一般类控件的使用2〕TextBox三、选择类控件1.OptionButton(单项选择按钮)3.ListBox(列表框)说明:①List属性是一个数组,一般格式为:List〔x〕如List〔1〕表示是第二个项目②ListIndex属性的值为当前选中的列表项的索引值,0表示选中,-1表示没有选中。
③ListCount属性表示一共有多少个列表项④Text属性表示当前选中的列表项的容。
四、方法方法是VB自身提供的一些特殊的过程,用来完成一定的操作。
不同的对象可执行不同的操作,因此,对象调用的方法也有所不同。
窗体上常用的方法有:(1)Show方法调用该方法可以将窗体显示在屏幕上。
调用格式:[对象名].Show(2)Hide方法调用该方法可以隐藏窗体,但不会卸载窗体。
调用格式:[对象名]. Hide(3)Move方法(4)Cls方法可以去除窗体的文本和图形。
调用格式:[对象名]. Cls(5)Print方法在窗体上显示文字信息。
调用格式:[对象名]. Print五、VB的数据类型表六、运算符和表达式1、算术运算符3、关系运算符七、常用部函数3、日期和时间函数八. 数据的输入输出1. InputBox函数InputBox(提示[,标题][,缺省][,x 坐标位置][,y坐标位置])其中:提示为提示信息,标题为对话框标题,缺省为输入区缺省值函数返回字符类型.2. MsgBox函数和MsgBox过程函数形式:变量[%] = MsgBox(提示[,按钮][,标题])过程形式: MsgBox 提示[,按钮][,标题]3、输出数据使用Print方法实现数据的输出格式:[Object.]Print {Spc(n)|Tab(n);}expression charpos其中:Object为窗体,图片框,打印机等对象。
VB应用教程—窗体第四章窗体 (1)4.1窗体的结构 (1)4.2窗体属性 (2)4。
2。
1窗体基本属性 (2)1. 名称(Name) (2)2。
AutoRedraw(自动重画) (4)3。
BackColor(背景色)与ForeColor(前景色) (6)4。
BorderStyle 属性 (9)5。
Height(高度)、Width(宽度)、Top(顶部)与Left(左边距)属性 (10)6. Caption 标题属性 (12)7.字型Font属性组 (13)8。
Enabled(允许)(逻辑值) (1)9。
Visible(可见)属性(逻辑值) (1)4。
2。
2窗体其他常用属性 (3)4。
3 窗体的主要事件 (4)4.3。
1 Activate (活动事件)与Deactivate(非活动事件) (4)4。
3。
2 Load(装入)与UnLoad(卸载)事件 (5)4.3.3 Click(单击)与DblClick(双击)事件 (6)4.3.4 Resize 事件 (10)4.4窗体控制 (10)4。
4。
1装入或卸载窗体 (11)4.4。
2显示和隐藏窗体................................................................ 错误!未定义书签。
4.4。
3 Cls方法 (14)4。
4。
4 Move方法 (14)4。
4.5 TextHeight和TextWidth (18)4。
4。
6位置属性CurrentX和CurrentY (18)4。
4.7窗体之间的数据存取 (20)4.5基本的窗体操作 (22)4。
5.1添加窗体: (22)4。
5.2移除(清除)窗体 (23)4。
5。
3 END语句 (23)4.5。
4多窗体的启动(显示)顺序 (25)4.6多文档程序 (31)4.6.1多文档程序的建立 (31)4。
6。
2主窗体与子窗体的标题 (34)4。
6。
3主窗体与子窗体的菜单 (34)4。
程序设计:1.题目:(事件)双击窗体(响应)求1+5+10+15+……+500的和,并将结果输出到窗体上。
将结果存入到SUM中Private Sub Form_dblClick()Dim sum As Longsum = 1'**************Begin************For i = 5 To 500 Step 5sum = sum + iNext iPrint sum'**************end************TestFunc (sum)End Sub2.题目:求两个数m,n的最大公约数p和最小公倍数q注意:在指定的事件内编写代码。
Private Sub Form_Load()ShowDim p, q As IntegerDim m, n, As IntegerDim t, r As Integerm = 21n = 28'**************Begin************If m <n Then t = m: m= n: n = tDor = m Mod nIf r = 0 Then Exit Dom = nn = rLoopp = nq = 28 * 21 / p'**************end************Print "最大公约数=", pPrint "最小公倍数=", qtestfunc p, qEnd Sub3.题目:(事件)单击窗体(响应)我国现有人口13亿,设年增长率为1%,计算多少年后增加到20亿。
并将结果输出在窗体上,将结果存入变量year中。
使用do while……loop语句完成程序。
Private Sub Form_dbClick()Dim year As Integer'**************Begin************n = 13Do While n < 20n = n * 1.01year = year + 1LoopPrint year'**************end************4.题目:以下程序段用于求∑n!Private Sub Form_Click()Dim sum As Long, n As Longn = InputBox("请输入一个正整数")sum = 0For i = 1 To nsum = sum + mul(i)Next iPrint sumEnd SubPrivate Function mul(ByVal x As Long)Dim s As Long, i As Longs = 1For i = 1 To xs = s * iNext imul = sEnd Function5.题目:(事件)双击窗体。
窗体的常用事件(1)Load事件这个事件发生在窗体被装入内存时且发生在窗体出现在屏幕之前窗体出现之前Visual Basic会看一看Load事件里有没有代码如果有那么它先执行这些代码再让窗体出现在屏幕上(2)Click事件Dblclick事件这两个事件在单击或双击窗体时发生不过单击窗体里的控件时窗体的Click事件并不会发生Visual Basic会去看控件的Click事件里有没有代码(3)Activate (活动事件)与Deactivate(非活动事件)显示多个窗体时可以从一个窗体切换到另一个窗体每次激活一个窗体时发生Activate 事件而前一个窗体发生Deactivate事件(4)Resize事件在窗体被改变大小时会触发此事件4.窗体的控制(1)装入或卸出窗体要装入或卸出窗体用Load或Unload语句装入窗体Load formName卸出窗体UnLoad formNameFormName变量是要装入或卸出的窗体名Load语句只是把窗体装入内存并不显示出来要显示窗体可以使用窗体的Show方法(2)显示或隐藏窗体要显示或隐藏窗体用Show或Hide方法若尚未装入内存则先装入再显示显示窗体formNameshow mode隐藏窗体formNamehideFormName变量是窗体名可选变元mode为(缺省值)时窗体为非模态为时窗体为模态模态窗体完全占有应用程序控制权不允许切换到别的应用程序除非关闭!而非模态窗体则反之(3)END语句END语句的功能是终止应用程序的执行并从内存卸在所有窗体语法是END窗体的属性(1)设置属性的方法1)在设计态通过属性窗口设置直接在属性窗口中选择或输入既可2)在程序代码中改变属性值代码中的格式为对象名属性= 属性值例FormBackColor=RGB(255,0,0)窗体的常用方法()Hide方法用以隐藏MDIForm 或Form 对象但不能使其卸载语法objectHideobject 所在处代表一个对象表达式其值为应用于列表中的一个对象如果省略object则带有焦点的窗体就认为是该object说明隐藏窗体时它就从屏幕上被删除并将其Visible 属性设置为False 用户将无法访问隐藏窗体上的控件但是对于运行中的Visual Basic 应用程序或对于通过DDE 与该应用程序通讯的进程及对于Timer 控件的事件隐藏窗体的控件仍然是可用的窗体被隐藏时用户只有等到被隐藏窗体的事件过程的全部代码执行完后才能够与该应用程序交互如果调用Hide 方法时窗体还没有加载那么Hide 方法将加载该窗体但不显示它()Move方法用以移动MDIFormForm 或控件语法object Move left top width heightMove 方法的语法包含下列部分说明只有left 参数是必须的但是要指定任何其它的参数必须先指定出现在语法中该参数前面的全部参数例如如果不先指定left 和top 参数则无法指定width 参数任何没有指定的尾部的参数则保持不变()Print 方法在Immediate 窗口中显示文本语法object Print [outputlist]Print 方法的语法具有下列对象限定符和部分outputlist 参数具有以下语法和部分{Spc(n)| Tab(n)} expression charpos说明可以用空白或分号来分隔多个表达式对系统指定的国别设置用小数点分隔符将所有打印到Immediate 视窗的数据正确格式化关键字要用适用于主应用程序的语言输出对于Boolean 数据或者打印True 或者打印False根据主机应用程序的地区设置来翻译True 和False 关键字使用系统能识别的标准短日期格式书写Date 数据当日期或时间部件丢失或为零时只书写已提供的部件如果outputlist 数据是Empty则无内容可写但是如果outputlist 数据是Null则输出Null在输出Null 关键字时要把关键字正确翻译出来要把错误数据作为Error errorcode 输出在输出Error 关键字时要把关键字正确翻译出来如果在具有缺省显示空间的模块外使用此方法则需要object例如如果没有指定对象就在标准模块上调用此方法则将导致错误发生但是如果在窗体模块上进行调用则会在窗体上显示outputlist注意因为Print 方法是按照字符比例进行打印所以字符数与字符所占据的宽度固定的列的数目无关例如像W 这样的宽字母占据的宽度超过一固定列宽而像i 这样的窄字母占据的宽度则较小考虑到要使用比平均字符更宽的空间表列一定要留有足够余地另外也可以使用固定间距的字体(像Courier 字体)来确保每一字符均只占一列()Print From方法用以将Form 对象的图象逐位发送给打印机语法objectPrintForm说明Print Form 将打印Form 对象的全部可见对象和位图在绘制图形时如果Auto Redraw 属性为True则在运行时Print Form 将打印Form 对象或PictureBox 控件上的图形Print Form 所使用的打印机是由操作系统的控制面板中的设置来决定Style属性外观属性取时系统创建一个带下拉式列表框的组合框为时系统创建一个由文本框和列表框直接组合在一起的简单组合框可以从列表框中选择也可以直接在文本框中输入为时系统创建一个没有文本框的下拉式列表框单击列表框上的按钮才显示文本框用户不能在文本框中输入只能在列表框中选择控件常用控件介绍()常用控件的属性方法和事件boBox 组合框(将列表框和文本框结合在一起)其值为用户从列表框中选定的文本或直接输入的文本AddItem方法添加列表项使用格式[ 对象名] AddItem<列表项文本>[插入位置序号]若不指定位置则插入到列表末尾Clear方法删除列表所有项目RemoveItem 方法删除列表项使用格式[ 对象名] RemoveItem 删除项序号mandButton命令按钮Cancel属性取消属性它为True时按〖ESC〗即等于单击此按钮Default属性缺省属性它为True时按回车键即等于单击此按钮Timer计时器Interval属性两次调用Timer事件的事件间隔用于创建动态效果Frame 框架CheckBox 复选框OptionButton选项按钮Alignment属性决定它们的对齐方式=左对齐=右对齐V alue属性决定它们是否被选中的属性常用控件的使用辨析()文本框和标签的区别文本框通常用于向计算机输入信息而标签通常用于输出信息文本框是一个十分重要的控件因为由复选框和选项按钮向程序输入的信息毕竟只有少数的几条信息而已标签和文本框的区别很小标签可以看成是一个在运行时不能修改正文的文本框因此标签主要用于输出信息()Label的AutoSize属性和WordWrap属性为了使标签具有垂直伸展和字换行处理必须设置它的AutoSize属性和WordWrap属性同时为TrueAutoSize属性为FalseWordWrap属性为False时若标签不够高而Caption太长时Caption将被切割掉AutoSize属性为FalseWordWrap属性为True时情况也如此AutoSize属性为TrueWordWrap属性为False时表示可以水平伸展但只显示一行信息()Picture Box和Image的Stretch属性和AutoSize属性Image只有Stretch属性而Picture Box只有AutoSize属性AutoSize属性设为True则Picture Box改变自己的大小来适应其中的图形Stretch属性设为True则Image中的图形将改变自己的大小来适应外面的边框()Frame 框架CheckBox 复选框OptionButton选项按钮的区别复选框和选项按钮用于向程序输入信息框架用来对复选框和选项按钮进行分组复选框选中时会在小方框里打一个钩选项按钮选中时会在小圆圈里点一个点定制菜单菜单概述Windows中的菜单一般由菜单条菜单菜单项子菜单弹出式菜单组成普通菜单的设计()给菜单命名菜单标题和菜单命令也有Caption和Name属性设置了这两个属性就等于创建了菜单Name是一个抽象名称Caption是屏幕上可见的可在Caption里加入& 来设置热键()增加和删除菜单在Menu Editor中部有三个命令钮分别是下一个插入删除插入可用来增加新的菜单在这三个键下面的Caption列表框里选中菜单项(这时它的底色就变成深蓝色)单击插入键Visual Basic将上一个增亮菜单下推并增亮一空行就可以输入新菜单名和标题了删除键可用来删掉菜单选中要删掉的菜单单击Delete键就可以删掉它了()移动菜单标题有四种情况向上移动向下移动向左缩排向右缩排选中某一菜单标题安上下箭头则这个菜单将上下移动到你喜欢的位置上这也决定了它在界面中的位置如果按左右箭头情况则有所不同由于菜单是分级的所以如果它没有缩排则它是一个菜单标题如果它缩排一次那么它将变成一个菜单命令如果缩排两次那么它将成为一个子菜单命令VB里可以总共设计四层子菜单()设置分离条分离条是指在菜单中将命令分组的线VB将分离条也看成一个菜单项它也需要Caption和Name属性而且也有其它属性分离条与菜单项的区别是分离条的Caption 属性必须是连字号即减号也就是当设置了一个Caption属性为的菜单项时实际上就设置了一个分离条分离条的名字可以是barFile之类以表明分离条的位置()菜单的各种简单属性在菜单编辑器里有许多确认框和一些文本框及一个下拉式的列表框这些决定了菜单的各种属性)Checked 复选属性这个属性值设置为真将在菜单命令左边产生一个打勾的确认标志)Enabled有效属性各种各样的用户会产生千奇百怪的操作在许多Edit菜单里都会有不同形式的让菜单命令模糊的情况Enabled属性为真则菜单命令是清晰的Enabled属性为假则菜单命令是模糊的这时用户就不能选中这个菜单项了)Visible 可见属性对暂时不用的菜单如果把Visible属性设为假则菜单根本不会出现在屏幕上这样做比把Enabled属性设为假显得更加干脆!)Index属性可以生成菜单命令数组用索引号区分开例如向File菜单中添加一系列最近打开的文件名添加菜单可用Load方法以上属性可以在运行时设置形成动态的菜单的情况例如mnuUndoEnabled = FalsemnuPropertyVisible = False还可以改变Caption等属性mnuUndoCaption = Redo生成弹出式菜单(或浮动菜单)几乎每个Windows应用程序都提供弹出式菜单用户可以右键单击窗体或控件取得这个菜单弹出式菜单也属于普通菜单只是不固定在窗体上而是可以在任何地方显示弹出式菜单用PopupMenu方法调用假设已经用菜单编辑器生成了名为mnuedit的菜单则可以在MouseUp事件加入如下代码就可以生成弹出式菜单If Button = Then PopupMenu mnuedit设计状态条工具栏进程条等创建状态条选中状态条按F键进入属性窗口双击(Custom)可以进入主要的设置窗口SBarCtrl属性窗口(1)选择面板形状在SBarCtrl属性窗口里选择General标签在Style列表框里选择多面板(缺省形式)或单面板简单文本形式(2)添加或删除状态条面板在SBarCtrl属性窗口里选择Panels标签单击Insert按钮添加一个面板或单击Remove按钮删除一个面板(3)在单面板里显示文本在SBarCtrl属性窗口里选择General标签在SimpleText框里输入想显示在状态条面板里的文本用代码显示的方式是StatusBarSimpleText = New string to appear(4)在多面板里显示文本或图形1)在SBarCtrl属性窗口里选择Panels标签用Index旁的按钮选择面板序号2)在Text框里输入想显示在状态条面板里的文本3)如果想加入图形单击Browse按钮打开一个图形选择对话框选择想加入的图形然后单击打开按钮4)最后按确定按钮5)用代码显示的方式是StatusBarPanels(x)Text = New string toappear6)编写代码如果是一个单面板状态条当用户单击状态条时只需用下面的事件过程来响应Private Sub StatusBar_Click()End Sub如果是一个多面板状态条就需要鉴别用户单击的是哪一个面板可用下面的事件过程来识别用户所单击的面板Private Sub StatusBar_PanelClick(ByVal Panel As Panel)Select Case PanelIndexCase 1Code to follow if user clicks the first panelCase 2Code to follow if user clicks the second panelCase 3Code to follow if user clicks the third panelEnd SelectEnd Sub创建工具栏()建立工具条)在工具箱里单击工具条图标拖到窗体的任何位置Visual Basic自动将ToolBar移到顶部)按F键打开属性窗口)双击(Custom)打开ToolBar属性窗口)选择Buttons标签)单击Insert按钮Visual Basic就会在你的工具条上显示一个空按钮现在为你的每一个按钮重复这一步)单击确定按钮如果想把按钮分组首先生成一个分隔的按钮再在刚才提到的对话框里将这个按钮的Style属性改为Separator()为工具条增加图画)在Visual Basic工具箱里单击ImageList图标并将它拖到窗体的任何位置(位置不重要因为它总是不可见的))按F打开属性窗口)双击(Custom)打开ImageListCtrl属性窗口)选择Image标签)单击Insert Picture在现在图形的对话框里选择想使用的位图或图标然后单击打开按钮为每个想添加图形的工具条按钮重复此步)单击确定按钮)单击工具条按F双击(Custom)显示ToolBar属性对话框)选择General标签在ImageList框里选择刚才添加的ImageList控件)选择Buttons标签单击紧挨Index框的向左或向右箭头以选择一个按钮序号出现在工具条最左边的按钮序号为)在Image框里输入一个数输入为则显示刚才ImageList控件里的第一个图形输入为则显示刚才ImageList控件里的第二个图形)为每个按钮重复第步)单击确定按钮现在Visual Basic就会在工具条上显示精美的图形了Visual Basic的输入机制程序的基本操作就是数据的输入数据处理和数据的输出Visual Basic可中用于输入的控件主要有文本框Text Box复选框Check Box选项按钮Option Button列表框List Box组合框bo Box滚动条Scroll Bar通用对话框控件还有一个函数叫InputBox函数也可用于数据的输入通过文本框输入数据只要取得文本框的Text属性就可以对其进行操作了下面的代码可将Text文本框的正文变成大写输出至Text文本框Private Sub Form_Click ()TextText = UCase(TextText)End Sub通过复选框和选项按钮输入数据只要检测到Check Box和Radio Button的Value属性值就可以知道它们是否被选上了通过列表框和组合框输入数据()列表框List Box和组合框bo Box的不同它们在Windows的OpenSave As对话框里最为常见组合框又包括三种类型这三种类型要在它的Style属性里设置列表框仅仅把可以选择的项目列出来而组合框里有的类型可以允许用户输入数据()列表项目的增减使用AddItemRemoveItem语句可以增减列表项目通常将项目增减的语句放入Form_Load事件里ListBoxName AddItem itemboBoxName AddItem itemitem是新项目名称必须是字符串类型非字符串类型可通过Str函数或Format函数来转换转列表框组合框的每一项目都有一个Index值第一个项目的Index值是第二个是依此类推删除项目可通过删除其Index值来实现ListBoxName RemoveItem itemboBoxName RemoveItem item如ListBoxName RemoveItem 则删除了第一项这时原来的第二项就变成了第一项可以在设计阶段设定列表项目方法是在属性窗口选择List属性将出现一个下拉列表在列表中输入第一项按Ctrl+Enter输入第二项……最后用Enter结束()取得列表框/组合框的数据可以通过取得Text属性或通过取得ListIndex属性来判断哪一项被选择了ListIndex属性的值也同样是第一个为第二个为……如If ListText = Visual Basic Then InstructionsIf ListListIndex = Then Instructions组合框有时允许用户自己输入数据这时所输入数据的ListIndex值为通过滚动条Scroll Bar取得数据在Visual Basic的工具箱里有两种滚动条一种是垂直的一种是水平的它们的差异无非是摆放的方向不一样()滚动条的主要属性及事件)MinMax属性Min属性决定滚动条最左端或最顶端所代表的值Max属性决定滚动条最右端或最下端所代表的值)LargeChangeSmallChange属性SmallChange决定在滚动条两端的箭头钮上单击时改变的值LargeChange决定在滑块上方或下方区域单击时改变的值)Value属性V alue属性代表当前滑块所处位置的值这个值由滑块的相对位置决定)Change事件当滑块位置发生变化时就引发了Change事件()取得滚动条的数据滚动条并不是一个数据输入的好控件因为无法从滚动条上直接看出输入的数据但它的优点是可以表示一定范围里的相对位置为了得到数据只要取得滚动条的Value属性就可以了InputBox函数InputBox函数提供一个简单的对话框供用户输入信息在把其它版本的BASIC程序移植到Visual Basic时InputBox函数通常用来代替INPUT语句这个对话框的样子基本上是上面的样子它的完整语法是x = InputBox (prompt title default xpos yposhelpfile context)其中prompt是提示的字符串这个参数是必须的title是对话框的标题是可选的default是文本框里的缺省值也是可选的xposypos决定输入框的位置helpfilecontext用于显示与该框相关的帮助屏幕返回值x 将是用户在文本框里输入的数据x是一个字符串类型的值如果用户按了Cancel钮则x 将为空字符串设计状态条工具栏进程条等创建状态条选中状态条按F键进入属性窗口双击(Custom)可以进入主要的设置窗口SBarCtrl属性窗口()选择面板形状在SBarCtrl属性窗口里选择General标签在Style列表框里选择多面板(缺省形式)或单面板简单文本形式()添加或删除状态条面板在SBarCtrl属性窗口里选择Panels标签单击Insert按钮添加一个面板或单击Remove按钮删除一个面板()在单面板里显示文本在SBarCtrl属性窗口里选择General标签在SimpleText框里输入想显示在状态条面板里的文本用代码显示的方式是StatusBarSimpleText = New string to appear()在多面板里显示文本或图形)在SBarCtrl属性窗口里选择Panels标签用Index旁的按钮选择面板序号)在Text框里输入想显示在状态条面板里的文本)如果想加入图形单击Browse按钮打开一个图形选择对话框选择想加入的图形然后单击打开按钮)最后按确定按钮)用代码显示的方式是StatusBarPanels(x)Text = New string to appear)编写代码如果是一个单面板状态条当用户单击状态条时只需用下面的事件过程来响应Private Sub StatusBar_Click()End Sub如果是一个多面板状态条就需要鉴别用户单击的是哪一个面板可用下面的事件过程来识别用户所单击的面板Private Sub StatusBar_PanelClick(ByVal Panel As Panel)Select Case PanelIndexCaseCode to follow if user clicks the first panelCaseCode to follow if user clicks the second panelCaseCode to follow if user clicks the third panelEnd SelectEnd Sub11 / 11。
窗体事件处理编程2009-01-06 22:43:59 阅读9 评论0 字号:大中小转自:/study_vb/1/my21.htm关于窗体的常见属性与事件,我们在前面已详细介绍,下面我们来看看窗体的各种常见的事件处理方法:窗体的启动事件当窗体启动时,将依次发生Initialize事件和Load事件。
Initialize事件在创建对象的时候发生,用来设置对象属性的缺省值等。
此事件一般在类模块、用户控件、及用户文档等对象中使用,对于窗体对象,我们使用Load事件。
Load事件在窗体被加载到内存中时发生,我们可以将程序的初始化操作放在此事件中。
如在Load 事件中对变量进行初始化、设置控件的一些初始属性等。
如:Private Form Load()Text.Text=””IsChange=lEnd Sub上段代码十分简单,只有两句话,用于在程序启动时对文本编辑框控件进行清空和对用来监控文本内容是否改变的变量IsChange进行初始化。
窗体的启动方法启动一个窗体有多种方法,如下:(1)将窗体设置为启动对象,这样在程序启动时窗体自动被加载。
(2)使用Load语句加载窗体:Load Forml。
Load form1作用不仅仅是将窗体加载到内存,并不显示在屏幕上,如果想要将窗体显示出来,还必须使用窗体的显示方法:Forml.Show。
(3)使用窗体的Show方法加载窗体。
使用Show方法时,如果窗体已经被加载到内存中,则将其显示在屏幕上;如果窗体还没有被加载到内存中,则先将该窗体加载到内存中,再将其显示出来。
其使用格式如下:Forml.Show(4)通过对窗体中的某个控件进行访问来加载窗体,如:在Form2窗体中访问Forml中的命令按钮控件,这时如果Forml没有被加载,则Forml被加载到内存中来。
窗体的卸戴事件对于不使用的窗体,我们可以将其从内存中卸载掉,以释放内存空间;当我们卸载一个窗体时,将会依次发生QueryUnload事件、Unload事件和Terminate事件。
常用窗体事件
(1)Click 事件
在程序运行时单击窗体内的某个位置,Visual Basic将调用窗体的Form_Click 事件。
如果单击的是窗体内的控件,则只能调用相应控件的Click事件。
Click 事件:标题栏显示“鼠标单击”,窗体显示"欢迎使用VB"
Private Sub Form_Click()
Caption = "鼠标单击"
Print "欢迎使用VB"
End Sub
(2)DblClick 事件
程序运行时双击窗体内的某个位置,就触发了两个事件,第一次按动鼠标时,触发Click事件,第二次产生DblClick事件。
DblClick 事件:标题栏显示“双击窗体” ,清除背景图。
Private Sub Form_DblClick()
Caption = "鼠标双击"
Picture = LoadPicture("")
Print "结束使用VB"
End Sub
(3) Initialize初始化事件与 Load事件
在程序运行时,当窗体被装入工作区时开始为Initialize之后才触发它的Load 事件。
所以该事件通常用来在启动应用程序时,对控件属性和变量初始化Private Sub Form_Load()
Caption = "装入窗体"
Picture = LoadPicture ( App.Path + "\window.jpg")
FontSize = 48
FontName = "隶书"
Print "装入窗体"
End Sub
(4) Unload事件
Private Sub Form_Unload(cancel As Integer)
卸载窗体时触发该事件。
(5) Resize事件
Private Sub Form_Resize()
当窗体大小发生改变时,将触发一个Resize事件。
(6)Activate事件(活动事件)& Deactivate事件(非活动事件)
Activate 当一个对象成为活动窗口时发生。
Private Sub object_Activate()
Deactivate 当一个对象变为非活动(Deactivate)事件当在程序运行过程中,一个窗体变为非活动窗体时,则产生该事件
Private Sub object_Deactivate()
(7)MouseDown事件:按下鼠标任意键时产生
(8)MouseMove事件:按下鼠标任意键,并移动鼠标时产生。
(9)MouseUp事件:放开鼠标任意键时产生。
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
由上可见,上述3个事件的参数都是一样的,说明如下:
Button参数:表示按下的鼠标是哪一个键。
1表示按下鼠标左键,2表示按下鼠标右键,4表示按下鼠标的中间键。
Shift参数:是一个整数值,其取值的含义见vb窗体所有事件(2)表4-2。
X、Y参数:表示鼠标光标所在的坐标值。
(10)DragDrop事件:鼠标点住某一对象并拖动,直到放开鼠标键时才发生该事件,在拖放过程中,不发生DragDrop事件。
Private Sub Picture3_DragDrop (Source As Control, X as Single, Y As Single) 11)显示或隐藏窗体
要显示或隐藏窗体,用Show或Hide方法。
若尚未装入内存则先装入再显示。
显示窗体:formName.show mode
[obiect].Show[Style],[OwnerForm]
隐藏窗体:formName.hide
Object.Hide
FormName变量是窗体名,可选变元mode为0(缺省值)时窗体为非模态,为1时窗体为模态。
模态窗体完全占有应用程序控制权,不允许切换到别的应用程序,除非关闭!而非模态窗体则反之。