REM winlib5 version of dlgdemo.bbc
INSTALL @lib$+"winlib5"
BM_GETCHECK = &F0
LB_GETCURSEL = 392
BM_SETCHECK = &F1
CB_ADDSTRING = 323
CB_SETCURSEL = 334
LB_ADDSTRING = 384
UDM_SETRANGE = &465
BS_AUTOCHECKBOX = 3
BS_AUTORADIOBUTTON = 9
CBS_DROPDOWNLIST = 3
ES_AUTOHSCROLL = &80
ES_NUMBER = 8192
WS_BORDER = &800000
WS_GROUP = &20000
Gr%= FN_button("Group box",100,10,260,160,0,WS_GROUP+7)
Ed1%=FN_editbox("Text box",120,30,105,20,101,ES_AUTOHSCROLL+WS_BORDER)
Ed2%=FN_editbox("",240,30,105,20,101,ES_NUMBER+WS_BORDER)
Ud%= FN_createwindow("msctls_updown32","",0,0,0,0,109,&96,0)
Cb%= FN_combobox("",120,60,105,70,103,CBS_DROPDOWNLIST)
Lb%= FN_listbox("",240,60,105,70,104,WS_BORDER)
Rb1%=FN_button("Radiobutton 1",120,110,110,16,105,BS_AUTORADIOBUTTON)
Rb2%=FN_button("Radiobutton 2",120,140,110,16,106,BS_AUTORADIOBUTTON)
Ch%= FN_button("Checkbox",240,140,110,16,107,BS_AUTOCHECKBOX)
Pb1%=FN_button("Ok",120,180,90,22,1,0)
Pb2%=FN_button("Cancel",255,180,90,22,2,0)
SYS "SendMessage", Cb%, CB_ADDSTRING, 0, "Combobox 1"
SYS "SendMessage", Cb%, CB_ADDSTRING, 0, "Combobox 2"
SYS "SendMessage", Cb%, CB_ADDSTRING, 0, "Combobox 3"
SYS "SendMessage", Cb%, CB_ADDSTRING, 0, "Combobox 4"
SYS "SendMessage", Cb%, CB_SETCURSEL, 0, 0
SYS "SendMessage", Lb%, LB_ADDSTRING, 0, "Listbox item 0"
SYS "SendMessage", Lb%, LB_ADDSTRING, 0, "Listbox item 1"
SYS "SendMessage", Lb%, LB_ADDSTRING, 0, "Listbox item 2"
SYS "SendMessage", Lb%, LB_ADDSTRING, 0, "Listbox item 3"
SYS "SendMessage", Rb1%, BM_SETCHECK, 1, 0
SYS "SendMessage", Ud%, UDM_SETRANGE, 0, 999
Click%=0
ON SYS Click% = @wparam% : RETURN
REPEAT
WAIT 1
click%=0
SWAP Click%, click%
UNTIL click%=1 OR click%=2
IF click%=1 THEN
PRINTTAB(0,15) "OK pressed, settings were:"'
PRINT "Text box contained """FNgettext(Ed1%)""""
PRINT "Number box contained ";VAL(FNgettext(Ed2%))
PRINT "Combobox selection was """FNgettext(Cb%)""""
SYS "SendMessage", Lb%, LB_GETCURSEL, 0, 0 TO sel%
PRINT "Listbox selection index was ";sel%
SYS "SendMessage", Rb1%, BM_GETCHECK, 0, 0 TO sel%
IF sel% PRINT "Radiobutton 1 was checked" ELSE PRINT "Radiobutton 2 was checked"
SYS "SendMessage", Ch%, BM_GETCHECK, 0, 0 TO sel%
IF sel% PRINT "Checkbox was checked" ELSE PRINT "Checkbox was not checked"
ELSE
PRINT "Cancel pressed"
ENDIF
END
DEF FNgettext(hbox%)
LOCAL text%
DIM text% LOCAL 65535
SYS "GetWindowText", hbox%, text%, 65535
= $$text%