ペンの作成又は取得

線を使用して描画するには、ペンの取得または作成し選択しなければなりません。

ストックオブジェクトを使用

ストックオブジェクトからペンを取得するにはGetStockObject APIを使用します。
ストックオブジェクトなので、使用が終わってもDeleteObject APIによりプログラマが削除してはいけません。
ストックペンには以下のものがあります。

BLACK_PEN 黒
WHITE_PEN 白 

使用例(C++のソース)


GetStockObject(BLACK_PEN);

ペンの作成

ペンはCreatePen APIを使用して作成します。
第1引数が線種(PS_SOLID)、第2引数が線の太さ、第3引数が色です。
線種には以下の種類があります。太さが1以上の線を使用したいとき、CreatePen APIは、破線等を指定しても無視されるのでExtCreatePenを用いる必要があります。

使用例(C++のソース)

CreatePen

HPEN hPen;
hPen = CreatePen(PS_SOLID, 1, RGB(255, 0, 0));
ExtCreatePen

HPEN hPen;
LOGBRUSH logbrush;
logbrush.lbStyle=BS_SOLID;
logbrush.lbColor=RGB(0,255,0);
logbrush.lbHatch=0;
w=2;    //      幅
hPen = ExtCreatePen(PS_SOLID | PS_GEOMETRIC | PS_ENDCAP_SQUARE, w,&logbrush, 0,0);