PickColor(var color [, id]) color: BGR値 id: 色選択ダイアログの親ウィンドウのID (省略可)
call ColorPicker.uws
color = 0
bgcolor = $FFFFFF
dim list[] = "文字色を変える", "背景を変える", "やめる"
while TRUE
balloon("文字色: $" + replace(format(color, 6, -1), " ", "0") + "<#CR>背景色: $" + replace(format(bgcolor, 6, -1), " ", "0") + "<#CR><#CR>背景色を$000000にすると黄色になります(仕様)", 0, 0, 0, 20, "ms gothic", color, bgcolor)
select popupmenu(list, 0, status(getid(GET_BALLOON_WIN), ST_HEIGHT))
case 0
balloon()
PickColor(color)
case 1
balloon()
PickColor(bgcolor)
default
break
selend
wend
function PickColor(var color, id = -1)
h = idtohnd(id)
size = 36
dim lpCustColors[15] = color,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
flag = CC_ANYCOLOR or CC_FULLOPEN or CC_RGBINIT
result = ChooseColorA(36, h, 0, color, lpCustColors, flag, 0, 0, 0)
fend
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_PREVENTFULLOPEN = $4
const CC_SHOWHELP = $8
const CC_ENABLEHOOK = $10
const CC_ENABLETEMPLATE = $20
const CC_ENABLETEMPLATEHANDLE = $40
const CC_SOLIDCOLOR = $80
const CC_ANYCOLOR = $100