ペンの作成又は取得
線を使用して描画するには、ペンの取得または作成し選択しなければなりません。
ストックオブジェクトを使用
ストックオブジェクトからペンを取得するには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);