我不太明白对设备内容的操作,请指教
请大家看看下面的代码,在进入消息处理的第二句,把 DEFAULT_CHARSET字体选进了设备内容,而最后一句则是删除该字体句柄,将SYSTEM_FONT字体选进设备内容,但是程序在运行期间是以同一种字体显示的,我的问题是这两句好象没有什么关系,或者说第一句有点多此一举,请问您是怎么理解这段代码的?谢谢还有一个问题就是:删除了设备内容中的特性的相应的句柄,是不是就是删除了设备内容中的这种特性?谢谢
case WM_CREATE:
hdc = GetDC (hwnd) ;
SelectObject (hdc, CreateFont (0, 0, 0, 0, 0, 0, 0, 0,
DEFAULT_CHARSET, 0, 0, 0, FIXED_PITCH, NULL)) ;
//CreateFont产生画笔或逻辑画笔句柄,而GetStockObject是获得当前一些特性的句柄
GetTextMetrics (hdc, &tm) ;
cxChar = tm.tmAveCharWidth ;
cyChar = tm.tmHeight ;
DeleteObject (SelectObject (hdc,GetStockObject (SYSTEM_FONT))) ;
//GetStockObject返回的是数字ID,SelectObject返回的才是相应的句柄
ReleaseDC (hwnd, hdc) ;
// fall through