● コントロール(?)を描画する ●

DrawFrameControl API関数。名前を見る限り、各種コントロール(ボタンやコンボボックス etc...)を描画できそうな感じがするのであるが実際やってみたところ、コントロールというかコントロールに付属する部品が描画されるに留まった。…微妙。

ダウンロード (11KB)


とりあえず、主たるAPI関数とその定数だけを列挙しておく。詳細は上記サンプルを参照のこと。

'コントロールを描画する
Private Declare Function DrawFrameControl Lib "user32" (ByVal hDC As Long, ByRef lpRect As RECT, ByVal uType As Long, ByVal uState As Long) As Long

'DrawFrameControl関数のun1に指定する定数
Public Const DFC_CAPTION = &H1  'ウィンドウキャプション
Public Const DFC_MENU = &H2     'メニューバー
Public Const DFC_SCROLL = &H3   'スクロールバー
Public Const DFC_BUTTON = &H4   'ボタン

'DrawFrameControl関数のun2に指定する定数
Public Const DFCS_CAPTIONCLOSE = &H0         '[閉じる]ボタン
Public Const DFCS_CAPTIONMIN = &H1           '[最小化]ボタン
Public Const DFCS_CAPTIONMAX = &H2           '[最大化]ボタン
Public Const DFCS_CAPTIONRESTORE = &H3       '[元のサイズに戻す]ボタン
Public Const DFCS_CAPTIONHELP = &H4          '[ヘルプ]ボタン

Public Const DFCS_MENUARROW = &H0            '右向き矢印
Public Const DFCS_MENUCHECK = &H1            'チェックマーク
Public Const DFCS_MENUBULLET = &H2           '黒点
Public Const DFCS_MENUARROWRIGHT = &H4       '左向き矢印

Public Const DFCS_SCROLLUP = &H0             'スクロールバー上向き矢印
Public Const DFCS_SCROLLDOWN = &H1           'スクロールバー下向き矢印
Public Const DFCS_SCROLLLEFT = &H2           'スクロールバー左向き矢印
Public Const DFCS_SCROLLRIGHT = &H3          'スクロールバー右向き矢印
Public Const DFCS_SCROLLCOMBOBOX = &H5       'コンボボックスのスクロールバー
Public Const DFCS_SCROLLSIZEGRIP = &H8       'ウィンドウの右下隅にあるサイズ変更グリップ
Public Const DFCS_SCROLLSIZEGRIPRIGHT = &H10 'ウィンドウの左下隅にあるサイズ変更グリップ

Public Const DFCS_BUTTONCHECK = &H0          'チェックボックス
Public Const DFCS_BUTTONRADIOIMAGE = &H1     'オプションボタンイメージ
Public Const DFCS_BUTTONRADIOMASK = &H2      'オプションボタンマスク
Public Const DFCS_BUTTONRADIO = &H4          'オプションボタン
Public Const DFCS_BUTTON3STATE = &H8         '3状態(オン、グレイ表示、オフ)
Public Const DFCS_BUTTONPUSH = &H10          'プッシュボタン

Public Const DFCS_INACTIVE = &H100           '非アクティブボタン
Public Const DFCS_PUSHED = &H200             'ボタンを押した状態
Public Const DFCS_CHECKED = &H400            'チェック済み
Public Const DFCS_ADJUSTRECT = &H2000        'クライアント領域に合わせる
Public Const DFCS_FLAT = &H4000              'フラット
Public Const DFCS_MONO = &H8000              '境界がモノクロ

戻る