VB 程序设计_第08章 事件驱动程序设计

VB 程序设计_第08章 事件驱动程序设计

ID:40230356

大小:110.50 KB

页数:34页

时间:2019-07-27

VB 程序设计_第08章 事件驱动程序设计_第1页
VB 程序设计_第08章 事件驱动程序设计_第2页
VB 程序设计_第08章 事件驱动程序设计_第3页
VB 程序设计_第08章 事件驱动程序设计_第4页
VB 程序设计_第08章 事件驱动程序设计_第5页
资源描述:

《VB 程序设计_第08章 事件驱动程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第8章事件驱动程序设计8.1事件与事件驱动程序设计8.2常见键盘事件8.3常见鼠标事件8.1事件与事件驱动程序设计8.1.1事件程序的结构与驱动1.面向过程编程与事件驱动编程(1)面向过程编程用面向过程的语言编写的应用程序按照代码顺序运行,每次执行一行代码,执行过程中根据不同的代码语句,执行不同的逻辑分支或跳转到程序的其他部分。在面向过程编程中,程序负责控制用户如何输入信息。图8-1选择控制结构(2)事件驱动编程在VisualBasic中编写的应用程序是事件驱动的。在基于事件驱动的应用程序中,只有当特定事件调用该事件所对应的代码时,程序语

2、句才开始执行。键盘输入、鼠标事件、操作系统或程序代码都可以触发事件。事件驱动程序会持续检测和响应事件。事件发生时,如果与之对应的事件包含响应代码,VisualBasic就会执行这些代码。当单击窗体的“Button1”按钮时,将会触发鼠标单击(Click)事件,此时,VisualBasic运行过程SubButton1_Click中的代码。代码运行完后,VisualBasic等待下一个事件的发生,如图8-2所示。图8-2事件驱动编程示例下面是事件驱动应用程序中的典型事件序列。①启动应用程序,加载和显示窗体。②窗体(或窗体上的控件)接收事件。事

3、件可由用户引发(例如鼠标操作),也可以由系统引发(例如定时器事件),还可由代码间接引发(例如,当代码加载窗体时的Load事件)。③如果在相应的事件过程中存在代码,就执行代码。④然后,应用程序等待下一次事件。2.VisualBasic窗体的常用事件(1)Activate事件(2)Click事件(3)DblClick事件(4)Deactivate事件(5)Initialize事件(6)Load事件(7)MouseDown事件(8)QueryUnload事件(9)Resize事件(10)Terminate事件(11)Unload事件8.1.2事

4、件的驱动对象在这里的对象概念主要是指VisualBasic提供的现成对象,这也是VisualBasic的重要特征之一。VisualBasic中的对象主要分为窗体和控件两类。窗体是用户工作区,所有控件都在窗体中得到了集成,从而构成应用程序的界面;控件是指“空的对象”或基本对象,是应用程序的图形用户界面的一个组件,对其属性可以进行不同的设置,从而构成不同的对象。使用鼠标在某个控件上双击,即可将该控件复制到窗体中,通过对其属性的不同设置,可建立不同的应用程序。VisualBasic的工具箱如图8-3所示。图8-3VisualBasic工具箱在工

5、具箱中的文本框控件上用鼠标双击,即可将该控件复制到窗体的正中央。然后,用鼠标指向窗体中的该控件,按下鼠标左键并移动鼠标,将该控件拖动到另一位置。用同样的方法可将标签和命令按钮控件复制到窗体中,如图8-4所示。图8-4窗体和控件8.2常见键盘事件8.2.1键盘事件的认识键盘是计算机的标准输入设备。键盘事件由键盘的键入产生。VisualBasic可以响应3种键盘事件:KeyDown事件、KeyUp事件和KeyPress事件利用键盘事件可以编程进行多种键盘操作,也可以处理ASCII值代表的字符。对键盘事件的处理可以分为两个层次:控件级和窗体级。

6、注意,某些控件能够拦截键盘事件,以致窗体不能接收键盘事件。如命令按钮控件有焦点时的Enter键、焦点在列表框上时的方向键等。8.2.2KeyPress事件用户单击并松开一个ANSI标准键时,产生一个KeyPress事件。任何可打印的键盘字符,来自标准字母表的字符或少数几个特殊字符与Ctrl键的组合,回车键或空格键都可以触发KeyPress事件。KeyPress事件常用于文本框的事件处理。SubForm_Keypress(KeyAsciiAsInteger)'窗体的事件过程Subobject_KeyPress[IndexAsInteger,

7、]KeyAsciiAsInteger)'窗体控件的事件过程其中,参数KeyAscii为按键的相对应的ASCII值。一般来说,当用户对当前具有控制焦点的对象进行按下并释放的键盘操作时,直接引发该对象的KeyPress事件。但是,如果窗体的KeyPreview属性设置为True,则首先触发窗体的KeyPress、KeyUp和KeyDown事件,利用这些事件过程可以先滤去一些信息,然后传送给对象的KeyPress、KeyUp和KeyDown事件。也就是说,如果窗体的KeyPreview属性设为True,并且窗体级事件过程修改了KeyAscii变

8、量的值,则当前选中对象的KeyPress事件将接收到修改后的键盘码,如果窗体级事件过程将KeyAscii设置为0,则不再调用对象的KeyPress事件过程。利用KeyPress事件,可以对输入

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。