本ページには広告が含まれています。
カラー選択ダイアログを表示します。
- 構文(VBA)
- Declare Function ChooseColor Lib "comdlg32" Alias "ChooseColorA" (lpcc As CHOOSECOLOR_TYPE) As Long
- 構文(UWSC)
- DEF_DLL ChooseColorA({dword, hwnd, hwnd, dword, dword[], dword, dword, dword, dword}): bool: Comdlg32.dll
- 引数
- lStructSize
- 構造体のサイズ
- hwndOwner()
- ダイアログボックスを所有するウィンドウのハンドル
- hInstance()
- 使用するダイアログテンプレートを含むメモリオブジェクトへのハンドル
- rgbResult()
- ダイアログボックスの初期表示で選択する色
- lpCustColors()
- 16個の基本色が格納されているバッファへのポインタ
- flags()
- ダイアログボックスの初期化フラグ
- lCustData()
- lpfnHookメンバが示すフックプロシージャへ渡すデータ
- lpfnHook()
- フックプロシージャへのポインタ
- lpTemplateName()
- hInstanceメンバが示すモジュール内にあるダイアログテンプレート
- 戻り値
プログラム実行例
カラー選択ダイアログを表示
DEF_DLL ChooseColorA({dword, hwnd, hwnd, dword, dword[], dword, dword, dword, dword}): bool: Comdlg32.dll
CONST CC_RGBINIT = $1
CONST CC_FULLOPEN = $2
CONST CC_ANYCOLOR = $100
DIM h = 0
DIM color = 0
DIM lpCustColors[15] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
DIM flag = CC_ANYCOLOR OR CC_FULLOPEN OR CC_RGBINIT
IFB ChooseColorA(36, h, 0, color, lpCustColors, flag, 0, 0, 0) THEN
PRINT "赤:" + color AND $FF
PRINT "緑:" + (color AND $FF00) / $100
PRINT "青:" + (color AND $Ff0000) / $10000
ENDIF
結果
赤:255
緑:0
青:0
使用関数
関連記事
- INPUT関数 (スクリプト関数)
- インプットボックスを表示します。第一引数に表示するメッセージ、第二引数にデフォルト値、第三引数にアスタリスク表示にするかのBoolean値を指定します。
- MSGBOX関数 (スクリプト関数)
- メッセージボックスを表示します。第一引数に表示するメッセージ、第二引数に表示するボタンの種類を指定します。押されたボタンをInteger型で返します。