还剩28页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
事件和事件处理VB本课程将深入探讨编程中的事件和事件处理机制事件Visual BasicVB是程序中的关键组成部分了解如何有效地处理事件对于创建功能强大VB,的应用程序至关重要课程目标掌握事件体系学会编写事件处理程序拓展编程知识VB VB全面学习中各种不同类型的事件及其熟练掌握事件处理程序的编写方法和技深入学习事件机制的原理和应用为今后VB,相关知识为后续的应用开发奠定基础巧能够灵活应用于实际开发中的编程工作打下坚实的基础,,VB什么是事件定义作用事件指的是在程序执行过程中发生的一些动作或情况比如用事件提供了一种有效的机制使程序可以对外部环境的变化作,,户单击了按钮、按下了键盘或鼠标移动到某个控件上等这些出反应和处理通过事件处理程序可以根据用户的输入或其,都是可以被程序监测和响应的事件他外部因素自动执行相应的操作事件的分类时间事件鼠标事件基于系统时间或计时器的事件如定与鼠标操作相关的事件如单击、双,,时器触发、进程启动等击、滚轮滚动等键盘事件窗体事件与键盘输入相关的事件如按下、释与窗体操作相关的事件如打开、关,,放、按住等闭、最小化等鼠标事件点击事件双击事件鼠标左键点击对应控件时发生快速连续点击两次鼠标左键时,可用于执行特定操作发生可用于打开文件或执行更,复杂的操作移动事件滚轮事件鼠标在控件上移动时发生可用滚动鼠标滚轮时发生可用于放,,于实时显示鼠标位置信息大或缩小视图或滚动页面键盘事件键盘输入事件功能键事件12当用户在文本框或其他控件中输入文本时,会触发一系列键除了常规的文本输入,用户按下、或等功能键Shift CtrlAlt盘输入事件这些事件包括、和也会触发相应的键盘事件这些事件可用于处理快捷键等功KeyDown KeyUpKeyPress能对话框事件组合键事件34在对话框或消息框中按下键盘时,也会引发键盘事件通过用户同时按下多个键的组合也会产生特殊的键盘事件这些处理这些事件可以实现特定的功能事件可用于实现更复杂的功能窗体事件窗体关闭事件窗体加载事件窗体大小改变事件当用户关闭窗体时触发可用于保存用户在窗体初始化时触发可用于执行窗体加当用户调整窗体大小时触发可用于重新,,,数据或执行其他清理任务载后的初始化操作调整窗体内控件的布局和大小控件事件控件事件概述常见控件事件12每个控件都有自己特有的一如按钮的事件、文本框Click些事件这些事件可以让开发的事件、列,TextChanged者在特定条件下执行代码表框的事SelectedIndexChanged件等事件处理程序事件属性和方法34通过编写事件处理程序来响每个事件都有特定的属性和应控件的事件从而实现相应方法可以在处理程序中使用,,的功能获取相关信息时间事件持续性事件瞬时事件这类事件在一定时间段内不断触发如定时器事件、帧事件等这类事件发生在某个特定的时间点如日期和时间变化事件,,它们适用于需要长期监控或周期性处理的应用场景它们主要用于响应单一的时间节点变化其他事件计时器事件计时器事件用于定期执行特定任务例如更新界面、检查数据等可以通过设置计时间隔来控制任务执行频,率剪贴板事件剪贴板事件可以捕获用户对剪贴板的操作如复制、粘贴等从而实现相关功能,,错误事件错误事件用于处理程序运行过程中出现的各种异常情况确保程序能够平稳运行,事件处理概述事件的定义1事件是指在程序运行过程中发生的各种可识别的操作或状态变化事件处理的重要性2事件处理是构建交互式应用程序的核心能够让程序根据,用户的操作做出响应事件处理概述3事件处理包括事件的触发、事件的捕获和事件的响应处理等过程事件处理过程事件发生
1.1某个操作或行为触发了事件事件传播
2.2事件在控件和窗体间传播事件捕获
3.3系统捕获事件并执行处理程序事件响应
4.4程序执行响应事件的代码事件处理过程包括事件发生、事件传播、事件捕获和事件响应等步骤当某个操作或行为触发事件时,事件会在控件和窗体之间传播系统会捕获事件并执行相应的事件处理程序,程序则根据事件的性质执行相应的代码逻辑编写事件处理程序确定事件1将事件分类并明确需要处理的事件编写处理逻辑2根据事件发生的情况编写相应的处理逻辑关联事件处理程序3将事件处理程序关联到事件发生的控件或对象上编写事件处理程序首先需要确定哪些事件需要进行处理根据事件的类型和发生的情况编写相应的处理逻辑最后将编写好的事件处理程序关联到相应的控件或对象上,当事件发生时就能触发相应的处理事件的传播事件冒泡事件捕获当事件发生时事件会从最里层与事件冒泡相反事件捕获是从,,的控件逐层向外冒泡直到最外最外层的窗体向内层的控件逐,层的窗体开发者可以在任意层传递事件可以在任意层级层级上捕获和处理事件上截获事件事件处理顺序首先执行事件捕获然后在目标控件上执行事件处理程序最后执行事,,件冒泡开发者可以根据需求选择合适的处理机制事件的种类和属性事件类型事件属性事件可分为鼠标事件、键盘事每个事件都有一些属性如事件,件、窗体事件、控件事件及时源对象、事件类型、事件参数间事件等涵盖了用户与系统交等可用于识别和处理事件,,互的各个方面事件对象事件处理事件触发时系统会自动创建一通过编写事件处理程序可以对,,个事件对象包含了事件的所有事件进行处理和响应实现用户,,相关信息和属性交互功能常见鼠标事件介绍点击事件鼠标移入事件当用户单击鼠标时触发,可获取鼠当鼠标指针移入某个控件区域时触标在窗口中的坐标发,可用于特效呈现鼠标移出事件鼠标滚轮事件当鼠标指针离开某个控件区域时触当用户滚动鼠标滚轮时触发,可用发,可用于特效恢复于滚动内容或缩放窗口常见键盘事件介绍键盘按下()键盘按键释放()键盘输入()KeyDown KeyUpKeyPress当用户按下键盘按键时触发该事件可以当用户松开键盘按键时触发该事件可以当用户按下并释放键盘按键时触发该事,,获取按下按键的编码和字符值获取被松开按键的编码和字符值件可以获取输入字符的码值,ASCII常见窗体事件介绍事件事件事件事件Load ResizeActivate Deactivate当窗体加载完成时触发此事当窗体大小改变时触发此事当窗体激活时触发此事件当窗体失去焦点时触发此事,件可用于初始化窗体信息件可用于调整窗体内控件可用于更新窗体状态件可用于保存数据或执行,,,的大小和位置其他操作常见控件事件介绍点击事件鼠标悬停事件12用户单击控件时触发常用鼠标指针悬停在控件上时触于按钮、链接等交互式控件发用于展示更多信息或特效值改变事件获得焦点失去焦点事/34件控件的值发生改变时触发常见于文本框、复选框、滚控件获得或失去焦点时触发动条等用于执行输入验证或其他逻辑常见时间事件介绍小时事件分钟事件秒事件毫秒事件触发小时变更时会引发小时触发分钟变更时会引发分钟秒事件会在每次秒数变更时毫秒事件会在每次毫秒数变事件这可以用于执行定时任事件可以用于实时监测时间被触发可用于精确的实时处更时被触发可用于极其精细,,,,务或者时间相关的操作变化或执行周期性任务理或性能测试等的时间相关操作事件处理的基本方法直接编写调用方法在事件处理程序中直接编写需在事件处理程序中调用已定义要执行的代码这是最简单直的方法或函数来完成相应的操接的方法作这样可以增加代码的复用性事件委托使用事件委托技术将事件处理委托给其他对象这样可以提高代码的灵活性和可扩展性事件处理代码的位置在声明区域在过程中在独立的方法中在类的其他部分事件处理代码通常放在类的对于简单的事件处理可以将事件处理代码置于独立的事件处理代码也可以放在类,声明区域中跟随事件声明将代码直接置于事件的过程方法中可以提高代码的可重的其他部分如初始化方法,,这样可以使代码更加清晰中这样更加简洁但可能用性和可维护性这种方式、辅助方法等这样可以使,和有条理会影响代码的可读性更加灵活和结构化代码更加模块化和易于管理事件处理程序的命名遵循命名约定体现事件含义12事件处理程序的命名应遵循事件处理程序的名称应能明确反映出Visual的命名约定使用动词控件名该事件的含义和功能便于代码的阅读Basic,+,称的形式如和维护,Button1_Click易于理解保持一致性34事件处理程序的命名要简洁明了让其同一个项目中所有事件处理程序的命,,他开发人员一目了然地理解其用途名应该保持一致性遵循同样的命名规,范事件处理程序的参数参数列表事件处理程序通常接受一个或多个参数用来传递与当前事件相关的信息,参数属性事件对象通常包含事件发生时的各种属性如鼠标位置、键盘按键等,参数方法事件对象还可能包含某些方法用于控制事件的传播或触发其他动作,事件对象的属性和方法事件对象常用属性事件对象包含了发生事件的详包括事件类型、事件源对象、细信息如事件源、鼠标位置等鼠标指针坐标、键盘按键等可,,可以通过它获取这些信息以根据需要对事件进行相关处,理常用方法事件对象提供了取消事件默认行为、阻止事件传播等方法可以根据需,要对事件进行控制事件的冒泡机制向上传播更广泛的影响默认行为事件处理事件冒泡是一种向上传播事事件冒泡使得一个事件能够在事件冒泡过程中如果没开发者可以在事件冒泡的任,件的机制当一个事件发生影响更多的元素而不仅仅有被任何元素处理事件会意层级添加事件处理程序,,,在某个元素上时该事件会是发生事件的那个元素这一直传播到根元素并执行根据需求拦截和处理事件,,沿着树向上逐层传播增加了事件处理的灵活性和默认行为DOM,直到达到根元素广泛性事件的捕获机制事件捕获事件监听执行顺序事件捕获是从文档的根节点向目标可以为任意元素设置事件监听器事件捕获目标元素处理事件冒DOM DOM,--元素逐级传播的过程这种机制可以让监听某类型事件的发生并执行相应的处泡开发者可以选择在捕获阶段或冒泡,开发者在事件到达目标元素之前就能捕理函数阶段处理事件获并处理事件事件的委托什么是事件委托事件委托的原理事件委托的优势事件委托是一种将事件处理程序连接到通过创建一个委托对象可以将事件处理事件委托可以提高代码的可读性和可维,控件的技术可以使代码更加模块化和可程序与控件关联实现更灵活的事件处理护性同时也支持事件的动态绑定和解绑,,,重复使用事件的自定义定义事件声明事件12除了使用提供的内置事在类中声明一个事件,并在VB件外,我们还可以自定义新需要触发事件的地方调用该的事件这可以让代码更加事件灵活和可扩展添加事件处理程序传递参数34为自定义事件添加处理程序可以在自定义事件中传递参,在事件被触发时执行相应数,为事件处理程序提供更的代码逻辑多上下文信息课程小结总结回顾核心要点应用实践未来发展通过本课程的学习,我们深掌握了事件的种类、事件处能够有效利用各种事件来增事件驱动编程是软件开发的入了解了中事件和事件理的步骤、编写事件处理程强程序的交互性和响应性重要范式未来我们还可以VB,,处理的概念、分类及其在实序的方法以及事件机制的原提高用户体验探讨事件的高级应用和自定际应用中的重要性理义。
个人认证
优秀文档
获得点赞 0