CComboBox控件的下拉列表框,用鼠标在该ListBox上滑动的时候显示出当前具有focus的item项的索引
2011-07-21 10:58
591 查看
// 在CComboBox控件的下拉列表中滑动鼠标,会显示当前focus的item项,同时会将对应的item项以蓝色标记出来。通过spy++可以看到父窗口CComboBox控件收到一个WM_CTLCOLORLISTBOX消息。这里示例是得到该item项的索引值,同时将它显示到主对话框窗口的标题栏上。
// 需要重写CComboBox类,添加WindowProc虚函数,在虚函数中加入如下代码。 LRESULT CNewComboBox::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { // TODO: Add your specialized code here and/or call the base class if(WM_CTLCOLORLISTBOX == message) { HWND hListBox = (HWND)lParam; CListBox* pListBox = (CListBox*)FromHandle(hListBox); ASSERT(pListBox); int nCount = pListBox->GetCount(); if(CB_ERR != nCount) { CPoint pt; GetCursorPos(&pt); pListBox->ScreenToClient(&pt); CRect rc; for(int i=0; i<nCount; i++) { pListBox->GetItemRect(i, &rc); if(rc.PtInRect(pt)) { CString str; str.Format(_T("nIndex = %d"), i); AfxGetMainWnd()->SetWindowText(str); break; } } } } return CComboBox::WindowProc(message, wParam, lParam); }
相关文章推荐
- CComboBox控件的下拉列表框,用鼠标在该ListBox上滑动的时候显示出当前具有focus的item项的索引
- 鼠标如何在移动的时候根据当前控件变换形状
- tableview索引添加一个显示点击或滑动到哪个字母的控件
- C# WinForm中 获得当前鼠标所在控件 或 将窗体中鼠标所在控件名显示在窗体标题上
- silverlight中listbox鼠标在上面的时候显示图片
- 点击CComboBox控件的下拉按钮控制下拉框ListBox的显示和隐藏
- 上拉面板, 向上滑动的时候往上飞出一个显示面板的 Android 开源控件
- ListBox之类控件的Item项显示对象的两个属性
- (CEGUI)如何创建控件 ------下拉列表框,表格框,LISTBOX
- 再次给力发布,首款全中文习惯,支持鼠标滑动多选的多月(可以显示N个月)的日历控件,界面仿Twitter风格,多语言支持,Ctrl/Shift多选支持,日期范围限制支持,自定义事件支持
- MFC 自绘listbox , 自绘ComboBox 下拉列表框 如何设置其列表项的高度和宽度?
- EXCEL中下拉文字数字显示在一起的时候,选了只显示文字
- 下拉列表鼠标移动显示,类似于title属性
- iOS9TableView分割线默认不显示,只有滑动的时候才显示 解决办法
- 使用grid控件时,含有combo列表框的情况下,无法显示下拉列表,可能的解决方法
- android中使用TextView来显示某个网址的内容,使用<ScrollView>来生成下拉列表框
- 列表框控件(listbox)消息
- Windows Phone 奇怪现象之LiskPicker使用绑定的时候无法更改当前显示项
- MFC:在状态栏最左边显示鼠标当前的坐标
- android控件之下拉列表框