加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

VB.NET之旅-事件驱动程序设计

发布时间:2020-12-17 07:55:24 所属栏目:百科 来源:网络整理
导读:事件驱动程序设计:使用者所操作的每一个动作都视为「事件」,事件会被操作系统所拦截,并传递给应用程序的进程, 需要在事件中执行的程序代码,会放在事件处理函式(event handler)中 事件处理函式通常会依附在控件上 也可以独立存在 识别事件处理函式 借 Ha

事件驱动程序设计:使用者所操作的每一个动作都视为「事件」,事件会被操作系统所拦截,并传递给应用程序的进程,

  1. 需要在事件中执行的程序代码,会放在事件处理函式(event handler)中
    1. 事件处理函式通常会依附在控件上

  1. 也可以独立存在

  1. 识别事件处理函式
    1. 借 Handles 关键词来识别事件处理函式
    1. 与函式的名称没有相关 …

  1. 多对一的事件处理
    1. 多个控件可以使用同一个事件处理函式
      1. 类似 VB6 中的控件数组
      1. 范例: 当 TextBox 控件的文字改变时,设定为「changed」

  1. 使用多对一的事件处理的时机
    1. 当不同的控件均呼叫相同的程序代码时
    2. 减少程序代码的撰写

  1. 动态的事件处理在执行时期可以动态为事件驱动动态添加或移除事件
    1. 范例: 在按钮的事件中,呼叫 AddHandler 或是 RemoveHandler
      1. 当按下按钮时,就会出现两个Messagebox,第一个显示“TestA”,第二个显示“TestB
      1. address为事件驱动指明添加的哪个事件

  1. 一对多的事件处理
    1. 单一控件也可以呼叫多个事件处理函式
    1. 以上述动态移除和添加事件为例同一个事件驱动button_click有两个事件分别是TestATestB
    1. 使用时机
      1. 当程序的架构比较松散时
      2. 范例
        1. 在数据更新之后,必须通知所有开启中的窗体
        2. 每个窗体会在 Load 事件中动态加入事件处理
        3. 每个窗体会在 Closed 事件中动态移除事件处理
  1. 与事件相关的信息
    1. 事件处理函式的特征项具有两个参数:
      1. 引发事件的对象
      1. 该事件中特有的参数(e.g. 鼠标的位置)
    1. 在多对一的事件处理中,方便取得事件信息
      1. 范例:我们希望取得引发事件的是哪个控件
  1. 你问我答游戏
    1. 问:事件和事件驱动含义分别是什么?
    1. 答:it's your turn

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读