グラフィック オブジェクト
Windows はデバイス コンテキストで使用するさまざまな描画ツールを提供します。これは、塗りつぶしの内部に描画の行にペン、テキストを描画するために、ブラシ、フォントを提供します。MFC は Windows の描画ツールと同等のグラフィックス オブジェクト クラスを提供します。次の表は、使用できるクラスと Windows のグラフィック デバイス インターフェイスの (GDI) の同等のハンドルの型を示します。
[!メモ]
GDI+ は Windows XP に含まれており、 Windows NT では再頒布可能パッケージとして使用する 4.0 SP6、 Windows 2000、 Windows 98、および Windows ME。最新の再頒布可能パッケージをダウンロードするには、 https://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdkredist.htm" " を参照してください。詳細については、 MSDN の GDI+ SDK のドキュメントを参照: https://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/GDIPlus.asp。
この技術情報では、これらのグラフィックス オブジェクト クラスの使用方法を示しています:
Windows GDI オブジェクトのクラス
Class |
ウィンドウ ハンドルの型 |
---|---|
HPEN |
|
HBRUSH |
|
HFONT |
|
HBITMAP |
|
HPALETTE |
|
HRGN |
[!メモ]
クラス CImage は拡張されたビットマップをサポートします。
クラス ライブラリの各グラフィックス オブジェクト クラスに割り当てが、適切なを作成する初期化する必要があるそのクラスのグラフィックス オブジェクト、 CreatePenなどの関数を作成するコンストラクターがあります。
クラス ライブラリの各グラフィックス オブジェクト クラスに関連付けられたウィンドウ ハンドルへの MFC オブジェクトをキャスト キャスト演算子があります。結果のハンドルは関連オブジェクトがデタッチまで有効です。ハンドルを切り離しためにオブジェクト デタッチ のメンバー関数を使用します。
次のコードは、ウィンドウ ハンドルへの CPen のオブジェクトをキャストです:
CPen myPen;
myPen.CreatePen(PS_COSMETIC, 1, RGB(255,255,0));
HPEN hMyPen = (HPEN)myPen;
グラフィック オブジェクトをデバイス コンテキストに作成するには
スタック フレームのグラフィックス オブジェクトを定義します。仕様型のオブジェクトを作成します CreatePenなどの関数を初期化します。また、コンストラクターのオブジェクトを初期化します。コード例を提供する 二つ目の一段とと、作成の説明を参照してください。
前に選択した古いグラフィックス オブジェクトを格納する現在のデバイス コンテキストにオブジェクトを選択します。。
現在のグラフィックス オブジェクトとした場合、状態を復元するデバイス コンテキストに再古いグラフィックス オブジェクトを選択します。
スコープが終了すると帯割り当てられたグラフィックス オブジェクトが自動的に削除されるようにします。
[!メモ]
グラフィック オブジェクトを繰り返し使用すると、必要なたびに、を一度割り当て、デバイス コンテキストに選択できます。不要になったこのようなオブジェクトを削除してください。