|
发表于 2020-8-9 15:30:01
|
显示全部楼层
他是用WM_CTLCOLORBTN进行消息反射修改控件的背景色
这在MFCGridCtrl中不能达到你的要求
你自己试一下我说的方法
将这段代码替代
CString strText = GetText();
CString strTemp = strText.Left(1);
if ( strTemp == "1" )
{
CSize szText = pDC->GetTextExtent( strTemp );
for ( int x = 0; x < strText.GetLength(); x++ )
{
strTemp = strText.Mid(x, 1);
rect.left += szText.cx*x;
if ( x % 2 )
{
pDC->SetTextColor( 0x00ff0000);
} else
{
pDC->SetTextColor( 0x0000ff00);
}
DrawText(pDC->m_hDC, strTemp, -1, rect, GetFormat() | DT_NOPREFIX);
}
} else DrawText(pDC->m_hDC, GetText(), -1, rect, GetFormat() | DT_NOPREFIX);
原来的
DrawText(pDC->m_hDC, GetText(), -1, rect, GetFormat() | DT_NOPREFIX);
看看demo中是否字符是变色显示的? |
|