C++におけるCreateCompatibleDC関数の使用方法を教えてください。
C++のCreateCompatibleDC関数は、指定デバイスと互換性のあるメモリデバイスコンテキスト環境(DC)を作成するために使用されます。
この関数のプロトタイプは次のとおりです。
HDC CreateCompatibleDC(HDC hdc);
パラメータの説明:
- HDC に指定されたデバイス コンテキスト (DC) のハンドルで、作成されたメモリ DC と互換性のあるデバイスを表します。
戻り値:関数が成功すると、新しく作成したメモリ DC へのハンドルが返り、失敗すると NULL が返ります。
例を用いた説明:
#include <Windows.h>
int main() {
HDC hdc = GetDC(NULL); // 获取屏幕的DC
HDC memDC = CreateCompatibleDC(hdc); // 创建一个与屏幕DC兼容的内存DC
if (memDC == NULL) {
// 内存DC创建失败
ReleaseDC(NULL, hdc);
return -1;
}
// 使用内存DC进行绘图等操作
// 释放内存DC
DeleteDC(memDC);
// 释放屏幕DC
ReleaseDC(NULL, hdc);
return 0;
}
サンプルでは、最初にGetDC関数を使い、画面のDCを取得し、その後CreateCompatibleDC関数を使い画面のDCと互換性のあるメモリーDC(memDC)を作成します。その後、メモリーDC上で描画などの操作を施すことができます。最後にDeleteDC関数を使いメモリーDCを解放し、ReleaseDC関数を使い画面のDCを解放します。