Duilib CButtonUI按钮类的双击与右击消息处理
来源:互联网 发布:怒首领蜂 知乎 编辑:程序博客网 时间:2024/05/18 13:43
这部分在duilib中默认是没有处理的,代码在文件UICommonControls.cpp中的void CButtonUI::DoEvent(TEventUI& event)函数里。要加上双击和右击的处理也非常简单,下面是我的代码:
if( event.Type == UIEVENT_BUTTONDOWN || event.Type == UIEVENT_DBLCLICK) { if( ::PtInRect(&m_rcItem, event.ptMouse) && IsEnabled() ) { m_uButtonState |= UISTATE_PUSHED | UISTATE_CAPTURED; Invalidate(); } if (event.Type == UIEVENT_DBLCLICK) { m_pManager->SendNotify(this, _T("dbclick")); } return; } if (event.Type == UIEVENT_RBUTTONDOWN) { if( ::PtInRect(&m_rcItem, event.ptMouse) && IsEnabled() ) { m_uButtonState |= UISTATE_HOT; Invalidate(); m_pManager->SendNotify(this, _T("rclick")); } return; }
这样就可以在主窗口的Notify(TNotifyUI& msg)里判断消息类型来做处理了,消息类型也可以换成非字符串形式的,毕竟数字的比较比字符串的比较要快了几个数量级。这个框架做界面是不错了,只是有很多的小细节要处理,忠心希望这个框架能越走越远。
0 0
- Duilib CButtonUI按钮类的双击与右击消息处理
- duilib按钮的右击事件
- duilib中CListUI控件消息处理的方法与技巧
- duilib : 消息处理 tips
- duilib消息处理
- DuiLib消息处理剖析
- DuiLib消息处理剖析
- DuiLib消息处理剖析
- DuiLib消息处理剖析
- DuiLib消息处理剖析
- Duilib扩展—双击、右键消息扩展
- mfc按钮响应双击消息
- duilib鼠标键盘消息处理
- DUILib学习笔记---消息处理
- Duilib消息处理流程图解
- DuiLib 对键盘消息的处理——ESC、空格键
- Duilib扩展《01》— 双击、右键消息扩展
- Duilib扩展《01》— 双击、右键消息扩展
- javacc 研究与应用
- Windows Phone8模拟器设置
- 关于sql server与mysql外键唯一约束的区别
- java学习三 java程序的编译和运行
- 日志
- Duilib CButtonUI按钮类的双击与右击消息处理
- C\C++ const完全解释
- ubuntu 风扇控制
- SSH认证之一
- 加密学习
- ListView 无所不包
- 《汇编语言》实验10_3
- c++解析json文件: Rapidjson
- Ural1081 (dp)