簡體   English   中英

更改CListCtrl中的特定項目顏色?

[英]Change Specific Items Color in CListCtrl?

我想將所有目標名稱的顏色更改為紅色包括在Name1,Name2和Name3中。 並且每個測試名稱為黑色或其默認顏色。 lvColumn類型為LVCOLUMN。 任何想法如何做到這一點?................

lvColumn.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH;
    lvColumn.fmt = LVCFMT_LEFT;
    lvColumn.cx = 120;
    lvColumn.pszText = "Name1";
    m_szList.InsertColumn(0, &lvColumn);

    lvColumn.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH;
    lvColumn.fmt = LVCFMT_LEFT;
    lvColumn.cx = 75;
    lvColumn.pszText = "Name2";
    m_szList.InsertColumn(1, &lvColumn);

    lvColumn.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH;
    lvColumn.fmt = LVCFMT_LEFT;
    lvColumn.cx = 80;
    lvColumn.pszText = "Name3";
    m_szList.InsertColumn(2, &lvColumn);


    LVITEM lvItem;
    int nItem;

    lvItem.mask = LVIF_TEXT;
    lvItem.iItem = 0;
    lvItem.iSubItem = 0;
    lvItem.pszText = "Test1";
    nItem = m_szList.InsertItem(&lvItem);

    m_szList.SetItemText(nItem, 1, "Target");
    m_szList.SetItemText(nItem, 2, "Test3");

    lvItem.mask = LVIF_TEXT;
    lvItem.iItem = 1;
    lvItem.iSubItem = 0;
    lvItem.pszText = "Test2";
    nItem = m_szList.InsertItem(&lvItem);

    m_szList.SetItemText(nItem, 1, "Test1");
    m_szList.SetItemText(nItem, 2, "Target");

    lvItem.mask = LVIF_TEXT;
    lvItem.iItem = 2;
    lvItem.iSubItem = 0;
    lvItem.pszText = "Target";
    nItem = m_szList.InsertItem(&lvItem);

    m_szList.SetItemText(nItem, 1, "Test1");
    m_szList.SetItemText(nItem, 2, "Test2");

您需要處理NM_CUSTOMDRAW消息並更改該處理程序中的文本顏色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM