如何更改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. NSTableview更改高亮顏色
- 3. 在vi中更改高亮顏色
- 4. 在列表視圖中更改選擇高亮顏色
- 5. 如何更改Visual Studio 2012錯誤列表中的高亮顏色?
- 6. 更改TextInput控件的選定文本的高亮顏色
- 7. 如何更改圖表控件中各個列的顏色?
- 8. 如何更改NetBeans IDE中的高亮變量顏色?
- 9. 如何更改Sublime Text 2中的默認高亮顏色?
- 10. 如何更改Spinner中三角形的高亮(聚焦)顏色
- 11. 如何更改JavaFX中的高亮顏色?
- 12. 如何更改IPython(Jupyter)中代碼的高亮顏色樣式?
- 13. 更改文本框的高亮顏色
- 14. 更改UIButtons的高亮顏色
- 15. 如何更改Qt按鈕中的對焦顏色(高亮顏色)?
- 16. 如何更改MFC動畫控件的背景顏色
- 17. 如何在Vim中爲python #comment更改高亮度顏色?
- 18. Combobox更改高亮顏色winRT(metro app)
- 19. 更改頁面高亮顯示顏色
- 20. 更改微調項目高亮顏色
- 21. Cocoa osx NSTableview更改行高亮顏色
- 22. 更改Netbeans html標記高亮顏色
- 23. 更改android editText高亮顏色
- 24. 如何更改閃亮的控件顏色
- 25. 更改MFC C++中的文本顏色?
- 26. 如何更改聚焦的ListField行的默認高亮顏色?
- 27. 如何更改匹配分隔符的vimtex高亮顏色?
- 28. 如何更改高亮顏色在jQuery Mobile的選擇選項
- 29. 如何更改IKImageBrowserView的選擇高亮顏色
- 30. 如何更改Visual Studio語法高亮的顏色?
感謝您的鏈接。 我試過這個,但是點擊列表控件時,它會以藍色突出顯示。會有什麼問題? – Suri 2010-09-03 06:25:51
@ user323422,不能說沒有看到你的代碼。 – 2010-09-03 06:44:09
@Kirill V. Lyadvinsky藍色是默認的高亮顏色? – Suri 2010-09-03 06:47:06