duilib combo控件,当鼠标滚动时下拉列表自动关闭的bug的修复
来源:互联网 发布:华为 知乎 编辑:程序博客网 时间:2024/04/30 08:48
转载请说明出处,谢谢~~
群里有朋友提到了使用Combo控件时,当下拉列表出现,此时鼠标滚轮滚动,下拉列表就自动消失了。我看了一下源码,这个bug的修复很简单。
CComboUI控件被单击时创建CComboWnd窗体来模拟下拉菜单。CComboWnd类在HandleMessage函数里处理了鼠标滚动消息WM_MOUSEWHEEL,他把这个消息转发给CComboUI的DoEvent函数去处理,而CComboUI的DoEvent函数处理对应的UIEVENT_SCROLLWHEEL消息,又转而调用了SelectItem函数,SelectItem函数的第一句代码如下:
<pre name="code" class="cpp">bool CComboUI::SelectItem(int iIndex, bool bTakeFocus){ if( m_pWindow != NULL ) m_pWindow->Close(); if( iIndex == m_iCurSel ) return true;//省略其余代码}
如果发现下来菜单存在,就关闭他。所以这里注释掉这一局代码就OK了,仅此而已。
这是我自己使用的Duilib和Uilib库,修复了我在博客中说明的所有bug以及很多还没有去说明的bug,同样也包含别人修复过的bug。库里面包含我扩展过的部分控件。以及添加了Duilib扩展群群主heat的透明异形窗体功能的支持。
这个库是我用vs2010修改的。如果你无法正常打开我的库或者编译有问题,那么建议把你需要的.h或者.cpp文件替换你自己的duilib库对应的文件。
我修改过的代码,一般可以通过搜索“redrain”找到对应的位置和修改时间
此库是我个人使用,由于我水平所限,所以不保证我修改的代码的质量。请你看过代码后再决定是否使用。使用这个库出现问题,不承担任何责任。
Redrain 2014.10.30
0 0
- duilib combo控件,当鼠标滚动时下拉列表自动关闭的bug的修复
- duilib 修复combo控件打开下拉菜单后不会自动定位到上次选择的位置上的bug
- duilib 修复combo控件打开下拉菜单后不会自动定位到上次选择的位置上的bug
- duilib List控件,横向滚动时列表项不移动或者移动错位的bug的修复
- duilib List控件,横向滚动时列表项不移动或者显示错位的bug的修复
- duilib的Combo控件滚动条不显示的问题
- 【duilib界面库】duilib界面库(干货) 修复UIScrollBar鼠标移出控件外显示异常的BUG
- duilib 修复Text控件无法设置宽度的bug,增加自动加算宽度的属性
- 修复duilib库UISlider控件的4个bug
- duilib relativepos属性导致控件错误的bug修复
- 编辑时下拉列表的回显
- duilib 修复padding属性导致其他控件自动计算宽高度错误的bug和导致自己宽高度错误的bug
- 修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug
- duilib 修复CTreeViewUI控件动态添加子控件时,对是否显示判断不足的bug
- 修复 artDialog 双击遮罩层就会自动关闭的bug.... 自己动手....
- [置顶] 修复 artDialog 双击遮罩层就会自动关闭的bug.... 自己动手....
- Duilib Combo bug
- 初始化时下拉列表框选中相应的值
- 【交互设计】七步打造手机网站
- ajax个人学习笔记
- android:shape的使用 (android用xml文件生成图像控件)
- 将ImageView变成灰色竟是如此简单
- 经典的标量子查询
- duilib combo控件,当鼠标滚动时下拉列表自动关闭的bug的修复
- 锚文本的真正代价在于升职用户体验而非网站排名
- BOOST库的thread
- 黑马程序员——包、多线程
- 总结 android编程规范
- iframe 高度自适应
- 第[3天]程序的控制结构——循环嵌套例题01
- 我家的那只猫
- 第十周项目2-M$pszi$y是啥意思?(原版i love u)