|
好长时间没发源,我的东西似乎都没什么创意,呵呵,今天在发个挂接IE事件的吧.知道有人写过了,但没看到东西.
根据大鸟的COM支持库写的,包含HTMLDocumentEvents2的38个事件(应该是全部了)
介绍介绍
1,只需要根据对象和events成员就可以挂接相应的事件.
2,可以单一的挂接某个事件,可以指定COM对象,也可以不指定,不指定将使用类本身的,很方便,不用自己释放
3,释放事件时可以根据事件序号来释放对应的对象,
4,内置函数可以将传递过来的指针转换为对象,(虽然很简单,但很实用)
5,内置函数取得变体型指针,以供返回值使用,
6,代码完全可独立复制为模块使用.(虽然是以窗口程序形式写的)
使用方法很简单,如下
| Events.OnContextMenu = &OnContextMenu |
| Events.OnClick = &OnClick |
| Events.OnMouseMove = &OnMouseMove |
| Events.OnSelectStart = &OnSelectStart |
| Events.OnSelectionChange = &OnSelectionChange |
| Events.OnKeyPress = &OnKeyPress |
| DocumentEvents.AttachEvent (Document, Events) |
被调用的子程序参数返回值需要按照数据类型里相应成员的备注来申明,否则可能出错.
心得
这个源很早就想发布了,因为不完善所以就改啊改啊,今天已经完成的个人感觉非常不错了.
里面用了2个技巧,判断结构体成员值为0,不用N多判断语句来实现,直接copy到数组来循环.很爽
还有个就是搜索数组成员,不用遍历,以前好像有大侠写过,但没看到源,自己就写个吧,带上了校验索引是否为成员首地址.以免对应的位与某成员的值相同而造成搜索错误,.
源码吧
|