3.事件

Supcan Edit的OnEvent( id, Event, p1, p2, p3, p4 )事件含义及参数分别如下：

Event | 含义 | p1 | p2 | p3 | p4
--- | --- | --- | --- | --- | ---
EditChanged | 当前输入有变化 |  |  |  |
BeforeDropdown | 下拉 Treelist 正准备下拉 |  |  |  |
DropdownSelChanged | 下拉行被鼠标选择了 | 1 - 数据有变化 0 - 数据无变化 |  |  |
ButtonClicked | 鼠标点到下拉 DropTreelist 弹出窗的自定义按钮上 |  |  | DropdownButton | 自定义按钮的 id
EditKeydown | 键盘动作(请见备注1) | 键的ASCII码，例如回车是13、空格是32 | 见备注2 |  |
EditChar | 键盘字符(请见备注1) | 字符的ASCII码 |  |  |
LooseFocus | 失去焦点 |  |  |  |
DropDownDataReach | 异步加载数据的下拉已经获得了数据并已完成加载. 注：同步加载数据的下拉不会触发本事件 | 下拉资源的 id |  |  |
UserEvent | 全局函数 PostMessage 发出的自定义事件 | 自定义 | 自定义 | 自定义 | 自定义
Device | 设备事件(如扫描仪) | Twain - 表示是扫描仪的事件 | 1 - 扫描成功 2 - 用户取消了操作 3 - 文件写入失败 4 - 未发现可用扫描仪 | 扫描仪扫描成功的文件名, 多个文件间以回车符分隔 |
CacheSaved | 全局事件，请参见全局函数 ListenEvent | 缓存的ID |  |  |

备注1：EditKeydown和EditChar均为在输入框中的键盘事件，EditKeydown能捕获几乎所有键盘动作，包括非字符的回车、Tab等；而EditChar则以输入的字符为主，包括中文.
您可以用全局函数 CancelEvent( ) 去阻止继续执行，就如事件没有发生过那样，但不同的ASCII码，您需要在这二个事件中挑选一个执行CancelEvent( )，具体请在树列表的演示页“12.事件”中去测试;
备注2：1-Ctrl键也按下了； 2-Shift键也按下了； 3-二者一起按下了.