文件名称:定义自己的事件-gb∕t 21050-2019 信息安全技术 网络交换机安全技术要求
文件大小:1.19MB
文件格式:PDF
更新时间:2024-06-29 06:59:42
Delphi 组件
4.3 定义自己的事件 定义全新的事件相对来说不经常发生,但是,还是有这样一些时候,当一个组件引入完 全不同于任何其它组件的行为时,就需要为其定义一个事件。 定义事件时需要考虑的问题: 触发事件 定义处理程序类型 声明事件 调用事件 4.3.1 触发事件 你需要知道什么触发了事件。对于一些事件,答案是明显的。例如,当用户按压鼠标左 键时发生鼠标按下事件,并且 Windows 给应用程序发送 WM_LBUTTONDOWN 消息。一旦 收到此消息,组件就调用它的 MouseDown 方法,这个方法依次调用用户已附加给 OnMouseDown 事件的任何代码。 但是,有一些事件不是很明显地能联系到外部发生的特定事情上。比如,滚动条有 OnChange 事件,此事件由几种事项触发,包括键盘键击、鼠标点击、以及在其它控件中发 生的变化。当定义你的事件时,你必须保证所有发生的有关事项调用正确的事件。 注释 对 CLX 应用程序,参见 7-10 页的“使用 CLX 响应系统通告”。 4.3.1.1 二种事件 有二种你需要提供事件的事项:用户交互、状态改变。用户交互事件几乎总是由来自 Windows 的消息触发,这个消息指示用户做了某事,而你的组件可能需要对其作出响应。状 态改变事件也可能涉及来自 Windows 的消息(比如,输入焦点改变和使能),但是,它们也