wxWidget treecontrol响应drag的步骤
来源:互联网 发布:音乐信息编辑软件 编辑:程序博客网 时间:2024/05/29 03:40
前提是窗口继承wxTreeCtrl,
1, 在类的声明的结束部分的前面,加入
DECLARE_EVENT_TABLE()
来指示代码这个类需要消息路由。
2, 给自己的窗口一个ID,头文件中加入
enum{ TreeControlId = 3265;};
3,类的实现文件中,加入消息映射的具体表格
BEGIN_EVENT_TABLE(myTree, wxTreeCtrl) EVT_TREE_BEGIN_DRAG(TreeControlId, myTree::OnBeginDrag) EVT_TREE_END_DRAG(TreeControlID, myTree::OnEndDrag)END_EVENT_TABLE()
上面的路由指示窗口,遇到在窗口ID为"TreeControlId"中发生DRAG事件,请call我的OnBeginDrag() 和OnEndDrag()。
4、实现上面的两个函数。
5、在创建窗口的时候,初始化的时候调用父类wxTreeCtrl()的构造, 把TreeControlId这个ID送入,指示自己的这个窗口的id必须是我们预定义的,否则消息路由无法正确递送。
上面是让树能支持drag的最少的步骤,一个不能缺。特别是创建窗口的过程中的id,不能用缺省的那个wxID_ANY。
注:
窗口上如果从鼠标消息截取入手的话,有OnMouseEvent(), EVT_MOUSE_EVENTS这样的入口可以截取,系统传入的参数可以判断
event.LeftDown(), event.LeftUp(), event.Dragging()。这种方法自由度更高,但也更费劲。
- wxWidget treecontrol响应drag的步骤
- TreeControl的使用笔记
- TreeControl
- TreeControl控件的使用(一)
- [wxWidget系列] wxWidget的事件机制
- 学习wxWidget的心得
- wxWidget编译的选项
- wxWidget的事件机制
- wxWidget的fileDialog, dirDialog
- wxWidget的编译
- 支持wxWidget的wxDevcpp
- wxwidget
- wxwidget
- 键盘事件的响应步骤
- wxWidget的下载与安装
- wxwidget加载图片的支持
- wxWidget里面的Event Loop
- OCX控件响应PreTranslateMessage消息的步骤
- vb.net生成exe之后,在其bin\Release目录下的exe点击无反应的解决办法(亲身实践)
- HDU-2846-Repository
- python + gtk 参考网站
- oracle删除数据库
- HDOJ 3507
- wxWidget treecontrol响应drag的步骤
- 创建一个调色板
- 让你少奋斗10年的工作经验
- 欧洲运营商为iPhone 5纷纷抢购Nano-SIM卡
- iBatis.net构架下bin\release目录复制之后exe无法执行(亲身实践)
- 动态添加表单元素 经典代码
- 信号和事件--事件篇
- vs2008+opencv2.3.1使用imread打不开图像的原因
- 复制代理配置文件