VB——第4章 多重窗体程序设计
- 格式:ppt
- 大小:412.00 KB
- 文档页数:17
VB程序设计多重窗体与环境应用10.1建立多重窗体应用程序10.1.1 建立多重窗体的语句和方法多重窗体程序设计中,需要打开、关闭、隐藏或显示指定的窗体,这可以通过相应的语句和方法来实现。
1.Load语句Load语句是把一个窗体装入内存。
其语法格式为Load 窗体名称2.Unload语句UnLoad语句清除内存中指定的窗体。
其语法格式为UnLoad 窗体名称3.Show方法Show方法是用来显示一个窗体,它兼有装入窗体和显示窗体两种功能。
其语法格式为[窗体名称].Show [模式]其中,“窗体名称”是指窗体的Name属性,缺省时指当前窗体;“模式”是指用来确定窗体的状态,它可以取两种值,即为0和14.Hide方法Hide方法是用来将窗体暂时隐藏起来,不在屏幕上显示出来,其语法格式为[窗体名称].Hide10.1.2建立多重窗体应用示例多重窗体程序中,经常要用到关键字Me,它代表的是程序代码所在的窗体。
例如,创建一个工程,由三个窗体组成,Form1用于输入用户名和口令,当输入正确时单击“确定”按钮显示Form2,当输入错误时则显示Form3,单击退出按钮结束程序;Form2中用文本框显示系统信息,单击“返回”按钮回到Form1;Form3为退出窗体,单击窗体则结束程序。
1.创建三个窗体及控件选择“工程”菜单的“添加窗体”命令,添加两个窗体,窗体的名称按添加顺序分别为Form2和Form3,这样工程就由三个窗体组成。
(1) 窗体1:该窗体为主窗体,名称为Form1,是用来供用户确认和调用其他相应的窗体。
该窗体上有三个标签,两个文本框,两个按钮,文本框Text1用于输入用户名称,文本框Text2用于输入口令。
(2) 窗体2:该窗体名称为Form2,该窗体上有一个标签,一个文本框,一个按钮,文本框采用多行显示,具有垂直滚动条,锁定文本框不能编辑。
(3) 窗体3:该窗体名称为Form3,为退出窗体,窗体上有一个图片框,一个标签。
第四至五课(四)窗体的设计授课方式:讲授法授课学时:1学时教学目的:通过本次课的学习,学生应该掌握窗体的常用属性、事件和方法,掌握多种窗体的建立方法,学会设置启动窗体和启动工程。
教学重点和难点:1.窗体的常用属性、常用事件以及窗体的五种方法;2.多重窗体的建立教学过程:4.1 窗体的属性、事件和方法一、窗体的常用属性介绍窗体的Name属性、Picture属性和AutoRedraw属性二、窗体的常用事件通过例题来详细讲解窗体的以下几种常用事件——Load事件与Unload事件;Click事件与DblClick事件;KeyPress事件、KeyDown事件和KeyUp事件;MouseMove事件、MouseDown事件和MouseUp事件;Resize事件;Activeate 事件与Deactivate事件1.事件的具体应用情况2.触发事件的条件三、窗体的常用方法通过例题使学生掌握以下五种方法的应用Cls方法、Hide方法与Show方法、Move方法和Print方法1.每个方法的具体功能和用途2.方法调用的语法格式4.2 多重窗体一、设置启动窗体使学生掌握启动窗体设置的步骤二、设置启动工程使学生掌握启动工程设置的两种方法学生作业:上机实验二:窗体的使用(五)文本框和标签授课方式:讲授法授课学时:1学时教学目的:通过本次课的学习,学生应该能会使用文本框处理字符信息,能灵活使用文本框的属性、方法和事件,掌握使用标签控件显示字符信息的方法,并且能够灵活使用标签控件的属性、方法和事件。
教学重点和难点:1.文本框控件的属性、方法和事件;2.标签控件的属性、方法和事件。
教学过程:第1节文本框和标签一、文本框控件(Textbox)1.介绍文本框在VB中的用途。
2.掌握以下9个文本框的主要属性(1)Text、(2)MaxLength(3)MultiLine(4)ScrollBars(5)Locked(6)SelStart(7)SelLength (8)SelText(9)PasswordChar3.掌握文本框的一个主要方法——SetFocus方法(1)本方法的应用情况(2)它的语法格式:[对象.] SetFocus4.掌握文本框的4个主要事件——Chang事件、KeyPress事件、LostFocus事件和GotFocus事件(1)掌握事件的应用情况(2)掌握触发事件的条件5.举例说明讲解一道利用文本框来实现复制、剪贴和粘贴功能的例题,通过此例题的讲解使学生更加熟练的掌握有关文本框控件的常用属性、方法和事件。
⼆、多窗体程序设计 当应⽤程序功能较强和分类较多,程序和⽤户的交互频繁时,如果只⽤⼀个窗体和⽤户进⾏交互,⼀⽅⾯难以进⾏合乎美观原则的设计,另⼀⽅⾯分类⼯作很难,设计出来的界⾯不符合友好原则。
这时使⽤多重窗体程序设计,增强程序界⾯的友好性。
多窗体指的应⽤中有多个窗体,它们之间没有绝对的从属关系。
每个窗体的界⾯设计与单窗体的完全⼀样,只是在设计之前应先建⽴窗体,这可以通过菜单“⼯程”/“添加窗体”命令实现。
程序代码是针对每个窗体编写的,当然,应注意窗体之间存在的先后顺序和相互调⽤的关系。
所以,多重窗体实际上是单⼀窗体的集合,⽽单⼀窗体是多重窗体程序设计的基础。
⼀般说来,多窗体的设计基本分成以下⼏个步骤: ◆分析应⽤要求,将其功能划分为不同的⼏部分 ◆分别创建各个窗体、模块 ◆在创建窗体时,除各窗体⾃⾝要完成的功能外,还要考虑窗体之间的调⽤关系 ◆点击[⼯程]/[属性]菜单,在[启动对象]中选择应⽤运⾏时⾸先执⾏的对象 ◆运⾏应⽤程序,检验应⽤及各窗体的运⾏情况1、多窗体程序设计常⽤的⽅法在单窗体程序设计中,所有的操作都在⼀个窗体中完成,不需要在多个窗体中切换。
⽽在多窗体程序中,需要打开、关闭、隐藏或显⽰指定的窗体,这可以通过相应的语句和⽅法来实现。
在多窗体程序设计经常⽤到下⾯四种⽅法:Load,Show Hide和Unload.(1)Load⽅法它的语法结构如下:Load [窗体名称]使⽤Load⽅法调⽤的窗体被存⼊内存,并不显⽰出来,同时会产⽣⼀个Form_Load()事件。
例如:Load Form2 '将Form2窗体存⼊内存(2)Show⽅法它的语法结构如下:[窗体名称].ShowShow⽅法⽤来显⽰被调⽤的窗体。
Show⽅法兼有装⼊和显⽰两种功能,也就是说,在执⾏Show⽅法时,如果窗体不在内存中,则Show⽅法会⾃动的把窗体调⼊内存,然后再显⽰出来。
例如: Load Form2Form2.Show '将Form2存于内存,并显⽰Form2窗体(3)Hide⽅法它的语法结构如下:[窗体名称].Hide使⽤Hide⽅法会隐藏被调⽤的窗体,既不在屏幕上显⽰,但仍在内存中(与Unload⽅法不同),被调⽤的窗体中的属性等已经处于⽆效的状态。
第四章窗体的设计4.1,窗体的属性4.2.1鼠标事件Mousedown 、mouseup、mousemove、click、dblclick1,click事件与dblclick事件Private sub form_click() Private sub form_dblclick()End sub End sub双击则两个事件都执行2,mousedown、mouseup、mousemove事件Private sub form_down(butten as integer,shift as integer,x as single ,y as single)End subPrivate sub form_mouseup(butten as integer,shift as integer,x as single,y as single)End subPrivate sub form_move(button as integer, shift as integer ,x as single ,y as single)End subButton 返回值和对应操作: 1 对应左键;2对应右键;4 对应中键Shift返回值和对应操作: 1 对shift ;2对应ctrl ;4对应alt例子:识别用户所按的键Private sub form_mousedown(butten as integer,shift as integer,x as single,y as single)Select case buttonCase 1Form1.print “您按下的是左键”Case 2Form1.print “您按下的是右键”End selectEnd sub例子:探测鼠标的位置Private sub form_mousemove(button as integer,shift as integer,x as single ,y as single)Text1.text=”x=”&x&””&”y=”&y4.2.2键盘事件Keydown、keyup、keyclick1,keyclick 事件Private sub form_keypress(keyascii as integer)End subKeyascii返回按键的ASCII码例子;显示所按键的ASCII码Priviate sub form_keypress(keyascii as integer)Print “所按的键的ASCII码值为:”&keyasciiEnd sub2,keydown、keyup事件过程Private sub form_keydown(keycode as integer,shift as integer) End subPrivate sub form_keyup(keycode as integer,shift as integer)End subShift 的含义和鼠标事件的一样与上面的keyascii不同,此时的keycode 返回的是键码非ASCII值。
VB教程——窗体在前面的教程中,我们讲到了窗体的主要属性与事件,而本节我们主要讲述窗体的一些窗口运用。
本节知识对于后面“多文档文件”的创建非常重要,所以希望大家好好掌握。
一、添加窗体:在VB 中每创建一个新文件,自动会生成一个新窗体,如果想在本窗体的基础上再添加一个窗体,那么应该如何做呢?1、选择工程/添加窗体命令,弹出如图一的窗口:图一2、选择你需要的窗体,然后点按“打开”就行了,结果可以在“工程”窗口中看到,如图二:图二二、清除窗体:在“工程”窗口中选中欲被清除的窗体,然后鼠标右键,在弹出的菜单中选择“移除……”命令。
如图三:图三三、窗体的显示属性:多窗口文件,往往是启动时打开主窗口,通过一些命令再打开其他窗口,那么,如何对窗口是否显示进行设置呢?1、选择“工程/工程属性”菜单命令,在弹出的窗口中找到“启动对象”,然后从中选择文件打开时的主窗口是哪个,如图四:图四2、其他窗体的载入:我们可以在主窗口中设置菜单或按钮,并在该菜单或按钮的代码区输入如下代码:Form2.Show 1其中,Show 是显示窗体的一种方法,1 是窗体的显示模式即Mode ,当值为0 即非模态窗体时(常态窗口),允许用户在当前程序中切换到其他窗口;当值为1 即模态窗体时,用户不能在各个窗口间切换。
3、窗体在程序中的三种状态:未装入:窗体没进入程序,不占用程序资源,可以通过Unload 方法卸载窗体。
装入但不显示:可以用Load 方法将窗体载入内存,随时准备显示。
显示:用Show 方法可以显示窗体,如果窗体已装入内存,那么直接Show ;如果窗体还没装入内存,Show 可以先用Load 的方法将窗体载入内存,然后再显示出来。
载入窗体:Load FormX卸载窗体:Unload FormX显示窗体:FormX.Show Mode再论窗体除窗体设计原理以外,还需考虑应用程序的开始与结束。
有一些技巧用于决定应用程序启动时的外观。
VB建立多重窗体应用程序建立多重窗体应用程序考点1 与多重窗体程序设计有关的语句和方法1 Load语句格式:Load窗体名称Load语句把一个窗体装入内存。
执行Load语句后,可以引用窗体中的控件及各种属性,但此时窗体没有显示出来。
“窗体名称”是窗体的Name属性。
2 UnLoad语句格式:UnLoad窗体名称该语句与Load语句的功能相反,它清除内存中指定的窗体。
3 Show方法格式:[窗体名称.]Show[模式]Show方法用来显示一个窗体。
如果省略“窗体名称”,则显示当前窗体。
参数“模式”用来确定窗体的状态,可以取两种值,即0和l(不是False和True)。
Show方法兼有装入和显示窗体的两种功能。
也就是说,在执行Show时,如果窗体不在内存中,则Show自动把窗体装入内存,然后再显示出来。
4 Hide方法格式:[窗体名称.]HideHide方法使窗体隐藏,即不在屏幕上显示,但仍在内存中,因此,它与UnLoad语句的作用是不一样的。
在多窗体程序中,经常要用到关键字Me,它代表的是程序代码所在的窗体。
考点2 建立界面1封面窗体封面窗体是整个程序的“门面”,应有一定的“艺术性”。
其主体部分可以用作图软件来设计。
2列表窗体列表窗体用来显示应用程序的内容,实际上它是一个对话框窗体。
考点3 编写程序代码程序代码是针对每个窗体编写的,其编写方法与单一窗体相同。
只要在工程资源管理器窗口中选择所需要的窗体文件,然后单击“查看代码”按钮,就可以进入相应窗体的程序代码窗口。
9.2 多重窗体程序的执行与保护考点4 指定启动窗体Visual Basic规定,对于多窗体程序,必须指定其中一个窗体为启动窗体;如果未指定,就把第一个窗体作为启动窗体。
考点5 多重窗体程序的存取1保存多窗体程序(1)在工程资源管理器中选择需要保存的窗体,然后执行“文件”菜单中的“*.frm另存为”命令,打开“文件另存为”对话框。
(2)执行“文件”菜单中的“工程另存为”命令,打开“工程另存为”对话框,把整个工程以.vbp为扩展名存入磁盘。