イメージを加工して表示する
Declare Function DrawState Lib "user32.dll" Alias "DrawStateA" _
(ByVal hdc As Long, ByVal hbr As Long, ByVal lpOutputFunc As Long, _
ByVal lData As Long, ByVal wData As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal fuFlags As Long) As Long
Declare Function DrawState Lib "user32.dll" Alias "DrawStateA" _
(ByVal hdc As Integer, ByVal hbr As Integer, ByVal lpOutputFunc As Integer, _
ByVal lData As Integer, ByVal wData As Integer, ByVal x As Integer, _
ByVal y As Integer, ByVal cx As Integer, ByVal cy As Integer, ByVal fuFlags As Integer) As Integer
BOOL WINAPI DrawState(
HDC hdc,
HBRUSH hbr,
DRAWSTATEPROC lpOutputFunc,
LPARAM lData,
WPARAM wData,
int x,
int y,
int cx,
int cy,
UINT fuFlags
);
引数
hdc
描画うするデバイスコンテキストのハンドルhbr
ブラシのハンドル(fuFlagsがDSS_MONOのときのみ有効。それ以外は0)lpOutputFunc
コールバック関数 DrawStateProcへのポインタlData
fuFlagsがDST_COMPLEXのときのみ使用する。それ以外は0。
同、パラメータ1wData
同、パラメータ2x
イメージを描画うする左上隅のX座標y
同、y座標cx
イメージの幅cy
同、高さfuFlags
イメージのタイプと状態を指定する定数戻り値
正常終了のとき 0以外備考
エラーのとき 0
fuFlagsがDDS_UNIONのとき、デバイスコンテキストにブラシを設定しておく必要がある。fuFlagsの定数
(イメージのタイプ)
DST_BITMAP = &H4 イメージとはビットマップ
(lDataの下位ワードにビットマップのハンドルを設定する)
DST_COMPLEX = &H0 コールバック関数を使う複雑イメージ
DST_ICON = &H3 イメージはアイコン
(lDataの下位ワードにアイコンのハンドルを設定する)
DST_PREFIXTEXT = &H2 アクセスキー付きのテキスト
(lDataにテキストへのポインタ、wDataにテキストのバイト数を設定する)
DST_TEXT = &H1 テキスト
(lDataにテキストへのポインタ、wDataにテキストのバイト数を設定する)
(イメージの状態)
DSS_NORMAL = &H0 元のイメージのまま
DSS_UNION = &H10 デバイスコンテキストに設定されているブラシでディザリング
DSS_DISABLED = &H20 エンボス効果
DSS_MONO = &H80 hbrでh指定したブラシを使用して描画
(このフラッグを指定したとき、モノクロで描画される)
DSS_RIGHT = &H8000& テキストを右詰め