如何更改mfc中列表控件中的高亮颜色。 我在clistctrl中找不到任何api。 我有覆盖NM_CUSTOMDRAW描述msdn ,但是当我点击列表中的任何项目它显示半蓝色和半黑色 为什么蓝色即将到来?如何更改mfc中列表控件中的高亮颜色
3
A
回答
4
您需要覆盖NM_CUSTOMDRAW处理程序。检查this sample。
0
基于Kirill V. Lyadvinsky的回答,我设法改变了所选项目的颜色。
我的对话框类包含使用资源ID IDC_TEST_DEF_TREE
的CTreeCtrl
成员。
方法OnNMCustomdraw
设置所选项目的颜色。消息处理程序注册的消息映射是这样的:
ON_NOTIFY(NM_CUSTOMDRAW, IDC_TEST_DEF_TREE, OnNMCustomdraw)
的方法实现:
void CSelectTestDefinitionDlg::OnNMCustomdraw(NMHDR* pNMHDR, LRESULT* pResult)
{
LPNMLVCUSTOMDRAW lpLVCustomDraw = reinterpret_cast<LPNMLVCUSTOMDRAW>(pNMHDR);
switch (lpLVCustomDraw->nmcd.dwDrawStage)
{
case CDDS_ITEMPREPAINT:
case CDDS_SUBITEM:
if (lpLVCustomDraw->nmcd.uItemState & CDIS_SELECTED)
{
// Your color definitions here:
lpLVCustomDraw->clrText = RGB(255, 255, 255);
lpLVCustomDraw->clrTextBk = RGB(0, 70, 60);
}
break;
default:
break;
}
*pResult = 0;
*pResult |= CDRF_NOTIFYPOSTPAINT;
*pResult |= CDRF_NOTIFYITEMDRAW;
*pResult |= CDRF_NOTIFYSUBITEMDRAW;
}
相关问题
- 1. 在javascript中更改下拉列表中的高亮颜色
- 2. 在vi中更改高亮颜色
- 3. 如何更改列表框中高亮显示的项目的颜色
- 4. 如何更改Visual Studio 2012错误列表中的高亮颜色?
- 5. 更改TextInput控件的选定文本的高亮颜色
- 6. 如何更改NetBeans IDE中的高亮变量颜色?
- 7. 如何更改Spinner中三角形的高亮(聚焦)颜色
- 8. 如何更改IPython(Jupyter)中代码的高亮颜色样式?
- 9. 如何更改Qt按钮中的对焦颜色(高亮颜色)?
- 10. 如何更改MFC动画控件的背景颜色
- 11. 如何在Vim中为python #comment更改高亮度颜色?
- 12. Combobox更改高亮颜色winRT(metro app)
- 13. Cocoa osx NSTableview更改行高亮颜色
- 14. 更改Netbeans html标记高亮颜色
- 15. 更改微调项目高亮颜色
- 16. 更改页面高亮显示颜色
- 17. 更改android editText高亮颜色
- 18. 如何更改闪亮的控件颜色
- 19. 如何更改聚焦的ListField行的默认高亮颜色?
- 20. 如何更改Visual Studio语法高亮的颜色?
- 21. 如何更改IKImageBrowserView的选择高亮颜色
- 22. 如何更改高亮颜色在jQuery Mobile的选择选项
- 23. 如何更改匹配分隔符的vimtex高亮颜色?
- 24. 在TabControl中更改TabItem的默认高亮颜色WPF
- 25. 更改颜色/语法高亮显示的JSF/Eclipse中Mars.2
- 26. 如何更改datagridview中列的颜色?
- 27. 如何更改列表视图中列表项的颜色
- 28. MFC - 更改cstatic文本控件的文本颜色
- 29. 在WinJS Windows 8应用程序中,如何更改列表视图中所选项目的高亮颜色?
- 30. 如何在VS2010中更改匹配大括号的高亮颜色
感谢您的链接。 我试过这个,但是点击列表控件时,它会以蓝色突出显示。会有什么问题? – Suri 2010-09-03 06:25:51
@ user323422,不能说没有看到你的代码。 – 2010-09-03 06:44:09
@Kirill V. Lyadvinsky蓝色是默认的高亮颜色? – Suri 2010-09-03 06:47:06