主题:如何恢复hDC的原有对象?
最近看书 利用vs2010 为环境,当改变按钮控件的背景色和文本颜色时用到DrawItem函数,该函数有一个hDC成员,可以在绘制按钮时使用这个DC来自定义,但是在操作完成后,即重载函数结束前,要恢复hDC的原有对象,请问是如何恢复的呢?具体代码如下:
CString strText;GetWindowText(strText);
COLORREF crOldColor =::SetTextColor(lpDrawItemStruct->hDC,RGB(255,0,0));
::DrawText(lpDrawItemStruct->hDC,strText,strText.GetLength(),&lpDrawItemStruct->rcItem,DT_SINGLELINE|DT_VCENTER|DT_CENTER);
//::SetTextColor(lpDrawItemStruct->hDC,crOldColor);
请问最后一行的作用就是恢复原有对象的吗?如果是,那我就不明白此时的变量crOldColor的值是多少了?是原先的那个值,还是第一次SetTextColor时候的那个值呢? 万分感谢