NMCUSTOMDRAW消息可以改变字体颜色,如何改变字体大小?
树形控件响应NMCUSTOMDRAW消息改变字体颜色,但是我现在不知道怎么改变字体大小?请教下大家。如果在消息响应函数里面加入CreateFont和SetFont的话不仅不会改变字体,而且字体会一直闪烁。
void CFONT_TESTDlg::OnNMCustomdrawWebTree(NMHDR *pNMHDR, LRESULT *pResult)NMCUSTOMDRAW 树形控件
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// TODO: 在此添加控件通知处理程序代码
NMTVCUSTOMDRAW *ptvTreeCtrl=(NMTVCUSTOMDRAW *)pNMHDR;
LPNMTVCUSTOMDRAW pCustomDraw = (LPNMTVCUSTOMDRAW)pNMHDR;
if ( CDDS_PREPAINT == ptvTreeCtrl->nmcd.dwDrawStage )
{
*pResult = CDRF_NOTIFYITEMDRAW;
}
else if ( CDDS_ITEMPREPAINT == ptvTreeCtrl->nmcd.dwDrawStage )
{
COLORREF clrNewTextColor, clrNewBkColor;
HTREEITEM nItem = (HTREEITEM)(pCustomDraw->nmcd.dwItemSpec);
ptvTreeCtrl->clrText=RGB(255,0,0);//字体颜色
ptvTreeCtrl->clrTextBk = RGB(255,255,255);
*pResult =CDRF_NEWFONT;
}
else if ( (CDDS_ITEMPREPAINT | CDDS_SUBITEM) == ptvTreeCtrl->nmcd.dwDrawStage )
{
*pResult = CDRF_DODEFAULT;
}
}