ControlWindow.Dispatch 方法 |
命名空间: VO
提示: |
---|
如果您想为底层窗口过程设置特定的返回值,您必须更改窗口对象的 EventReturnValue 变量。 如果您想处理其他事件(例如,定时器事件),您需要编写自己的 Dispatch() 方法。 在编写自定义的 Dispatch() 方法时,应遵循以下准则: 1. 对于正在使用的操作类型,应该对事件类型进行子类化。 2. 在派生对象中添加一个事件处理程序函数。(当接收到事件时,应该调用此事件处理程序。) 3. 通常,此事件处理程序的实现应该调用 Default()。这保持了与基类相同的行为,但也允许其他类为您的新事件类型提供有用的事件处理程序,从而允许您为其他类提供一个框架。 在这些情况下,应该在否则部分调用基类的 Dispatch()方法,以处理未被自定义分发器处理的接收到的事件。 例如: X# 1RETURN SUPER:Dispatch(<oEvent>) |
1METHOD DispatchUnknown(oEvent) CLASS MyCustomWindow 2 // Your code 3 // If you need the default window 4 // procedure call SELF:Default(oEvent) 5 // Assign the event return value to SELF:EventReturnValue, 6 // the default value is 0l. 7 SELF:EventReturnValue := 1l