LOGPEN 構造体
更新 : 2007 年 11 月
LOGPEN 構造体は、ペンのスタイル、幅、色を定義します。ペンとは、直線や境界を描画するときに使われる描画オブジェクトです。CPen::CreatePenIndirect 関数が LOGPEN 構造体を使います。
typedef struct tagLOGPEN { /* lgpn */
UINT lopnStyle;
POINT lopnWidth;
COLORREF lopnColor;
} LOGPEN;
パラメータ
lopnStyle
ペンのスタイルを指定します。このメンバには、次のいずれかの値を指定できます。PS_SOLID 実線のペンを作成します。
PS_DASH 破線のペンを作成します。ペンの幅が 1 のときだけ有効です。
PS_DOT 点線のペンを作成します。ペンの幅が 1 のときだけ有効です。
PS_DASHDOT 一点破線のペンを作成します。ペンの幅が 1 のときだけ有効です。
PS_DASHDOTDOT 二点破線のペンを作成します。ペンの幅が 1 のときだけ有効です。
PS_NULL null のペンを作成します。
PS_INSIDEFRAME 外接する四角形を指定する GDI 出力関数 (Ellipse メンバ関数、Rectangle メンバ関数、RoundRectメンバ関数、Pie メンバ関数、Chord メンバ関数など) により作成される閉じた図形の枠内に直線を描画するためのペンを作成します。外接する四角形を指定しない GDI 関数 (LineTo メンバ関数など) にこのスタイルが使われると、ペンの描画領域は枠の中に限定されません。
ペンのスタイルが PS_INSIDEFRAME で、色が論理カラー テーブルの色に一致しない場合、ペンでは描画にディザ カラーが使用されます。PS_SOLID のペン スタイルを使用して、ディザ カラーのペンを作成することはできません。ペンの幅が 1 以下のときは、PS_INSIDEFRAME スタイルは PS_SOLID と同じになります。
Ellipse、Rectangle、および RoundRect 以外の関数によって生成される GDI オブジェクトに PS_INSIDEFRAME スタイルを使うと、線が指定された枠内に完全に収まらないことがあります。
lopnWidth
ペンの幅を論理単位で指定します。lopnWidth メンバが 0 のときは、現在のマップ モードにかかわらず、ラスタ デバイス上でのペンの幅は 1 ピクセルになります。lopnColor
ペンの色を指定します。
解説
lopnWidth メンバでは POINT 構造体の y の値は使われません。
必要条件
ヘッダー : wingdi.h