怎样在clistctrl控件中将某一单元格的某一区域绘成某一种颜色,该怎么解决
怎样在clistctrl控件中将某一单元格的某一区域绘成某一种颜色
我在界面上有一个clist控件,其中有一列是用来做指示器用的,范围为0~360
比如我有一个起始值为20,结束值为80,则把该列对应的单元的20--80的区域用红色表示,怎么做啊,好象很难,帮帮忙啊,谢谢各位啊。
------解决方案--------------------
网上去找下ColoredListCtrl下过来用就可以了```
------解决方案--------------------
http://topic.csdn.net/t/20051215/15/4461308.html
------解决方案--------------------
使用CReportCtrl控件
这是一个第三方控件:下载地址:
http://www.codeproject.com/listctrl/ReportControl.asp
------解决方案--------------------
自绘或CustomDraw
------解决方案--------------------
如果列表项的位置是固定的话,贴个背景图是最简单的了.
偷懒的作法.
------解决方案--------------------
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/samples/internet/shellcc/customdraw_listview/default.asp
------解决方案--------------------
void CMMDlg::OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
LPNMLVCUSTOMDRAW lplvcd = (LPNMLVCUSTOMDRAW)pNMHDR;
switch(lplvcd-> nmcd.dwDrawStage)
{
case CDDS_PREPAINT:
*pResult = CDRF_NOTIFYITEMDRAW;
break;
case CDDS_ITEMPREPAINT:
lplvcd-> clrText = RGB(0, 0, 0);
*pResult |= CDRF_NOTIFYSUBITEMDRAW;
break;
case CDDS_ITEMPREPAINT|CDDS_SUBITEM:
{
lplvcd-> clrText = RGB(255,255,255);
lplvcd-> clrTextBk = RGB(255,0,0);
}
break;
}
}
------解决方案--------------------
还是用自绘吧!找这个例子,你会有收获的LVCustomDraw.zip
http://www.codeproject.com/listctrl/LVCustomDraw/LVCustomDraw.zip
qq:1600564
我在界面上有一个clist控件,其中有一列是用来做指示器用的,范围为0~360
比如我有一个起始值为20,结束值为80,则把该列对应的单元的20--80的区域用红色表示,怎么做啊,好象很难,帮帮忙啊,谢谢各位啊。
------解决方案--------------------
网上去找下ColoredListCtrl下过来用就可以了```
------解决方案--------------------
http://topic.csdn.net/t/20051215/15/4461308.html
------解决方案--------------------
使用CReportCtrl控件
这是一个第三方控件:下载地址:
http://www.codeproject.com/listctrl/ReportControl.asp
------解决方案--------------------
自绘或CustomDraw
------解决方案--------------------
如果列表项的位置是固定的话,贴个背景图是最简单的了.
偷懒的作法.
------解决方案--------------------
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/samples/internet/shellcc/customdraw_listview/default.asp
------解决方案--------------------
void CMMDlg::OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
LPNMLVCUSTOMDRAW lplvcd = (LPNMLVCUSTOMDRAW)pNMHDR;
switch(lplvcd-> nmcd.dwDrawStage)
{
case CDDS_PREPAINT:
*pResult = CDRF_NOTIFYITEMDRAW;
break;
case CDDS_ITEMPREPAINT:
lplvcd-> clrText = RGB(0, 0, 0);
*pResult |= CDRF_NOTIFYSUBITEMDRAW;
break;
case CDDS_ITEMPREPAINT|CDDS_SUBITEM:
{
lplvcd-> clrText = RGB(255,255,255);
lplvcd-> clrTextBk = RGB(255,0,0);
}
break;
}
}
------解决方案--------------------
还是用自绘吧!找这个例子,你会有收获的LVCustomDraw.zip
http://www.codeproject.com/listctrl/LVCustomDraw/LVCustomDraw.zip
qq:1600564