1、什么是设备内容?
设备内容(DC)实际上是GDI内部保存的数据结构,DC中的有些值是图形属性;当程序需绘图时,它必须先取得设备内容句柄;当程序在显示区域绘图完毕后,它必须释放设备内容句柄。
2、取得设备内容的3种方法
方法一:
- HDC hdc;
- PAINTSTRUCT ps;
- hdc = BeginPaint(hWnd, &ps);
- ...
- EndPaint(hWnd, &ps);
方法二:
- HDC hdc;
- hdc =GetDC(hWnd); //或者GetWindowDC(hWnd);
- ...
- ReleaseDC(hWnd, hdc);
方法三:
- HDC hdc;
- hdc =CreateDC(pszDriver, pszDevice, pszOutput, pData);
- ...
- DeleteDC(hdc);
扩展:
- 只取得关于某设备内容的一些信息而不绘画
- hdc =CreateIC(_T("DISPLAY"),NULL,NULL,NULL);
-
- 使用位图,取得一个内存设备内容
- hdcMem =CreateCompatibleDC(hdc);
- ...
- DeleteDC(hdcMem);
- 取得metafile设备内容建立metafile
- hdcMeta =CreateMetaFile(pszFileName);
- ...
- hmf =CloseMetaFile(hdcMeta);
- 获取设备内容信息
iValue =GetDeviceCaps(hdc, iIndex);