REM. Program to demonstrate a Dialogue Box
INSTALL @lib$+"WINLIB2"
dlg%=FN_newdialog("Dialogue box",20,20,160,128,8,1000)
PROC_groupbox(dlg%,"Group box",0,4,4,152,96,&20000)
PROC_editbox(dlg%,"Text box",101,12,20,64,12,&80)
PROC_editbox(dlg%,"123456",102,82,20,64,12,&2000)
PROC_dlgctrl(dlg%,"",109,0,0,12,12,&50000096,"msctls_updown32")
PROC_combobox(dlg%,"",103,12,40,64,60,3)
PROC_listbox(dlg%,"",104,82,40,64,48,0)
PROC_radiobutton(dlg%,"Radiobutton 1",105,12,64,64,10,0)
PROC_dlgctrl(dlg%,"",111,10,82,140,10,&50000000,"msctls_progress32")
PROC_pushbutton(dlg%,"OK",1,12,108,56,14,&20001)
PROC_pushbutton(dlg%,"Cancel",2,92,108,56,14,0)
PROC_showdialog(dlg%)
ON CLOSE PROC_closedialog(dlg%):QUIT
ON ERROR PROC_closedialog(dlg%):PRINT'REPORT$:END
SYS "SendDlgItemMessage",!dlg%,103,&143,0,"Combobox 1"
SYS "SendDlgItemMessage",!dlg%,103,&143,0,"Combobox 2"
SYS "SendDlgItemMessage",!dlg%,103,&143,0,"Combobox 3"
SYS "SendDlgItemMessage",!dlg%,103,&143,0,"Combobox 4"
SYS "SendDlgItemMessage",!dlg%,103,&14E,0,0
SYS "SendDlgItemMessage",!dlg%,104,&180,0,"Listbox item 0"
SYS "SendDlgItemMessage",!dlg%,104,&180,0,"Listbox item 1"
SYS "SendDlgItemMessage",!dlg%,104,&180,0,"Listbox item 2"
SYS "SendDlgItemMessage",!dlg%,104,&180,0,"Listbox item 3"
SYS "CheckRadioButton",!dlg%,105,106,105
SYS "SendDlgItemMessage",!dlg%,109,&465,0,999
PBM_SETRANGE = &401
PBM_SETPOS = &402
SYS "SendDlgItemMessage", !dlg%, 111, PBM_SETRANGE, 0, 100 << 16
SYS "SendDlgItemMessage", !dlg%, 111, PBM_SETPOS, 50, 0
Click%=0
ON SYS Click%=@wparam% AND &FFFF:RETURN
REPEAT
WAIT 1
click%=0
SWAP Click%,click%
UNTIL click%=1 OR click%=2 OR !dlg%=0
IF click%=1 THEN
PRINT "OK pressed, settings were:"'
DIM text% 100
SYS "GetDlgItemText",!dlg%,101,text%,100
PRINT "Text box contained """$$text%""""
SYS "GetDlgItemInt",!dlg%,102,0,1 TO Val%
PRINT "Number box contained ";Val%
SYS "GetDlgItemText",!dlg%,103,text%,255
PRINT "Combobox selection was """$$text%""""
SYS "SendDlgItemMessage",!dlg%,104,&188,0,0 TO sel%
PRINT "Listbox selection index was ";sel%
SYS "IsDlgButtonChecked",!dlg%,105 TO rb1%
IF rb1% PRINT "Radiobutton 1 was checked" ELSE PRINT "Radiobutton 2 was checked"
SYS "IsDlgButtonChecked",!dlg%,107 TO cb%
IF cb% PRINT "Checkbox was checked" ELSE PRINT "Checkbox was not checked"
ELSE
PRINT "Cancel pressed"
ENDIF
PROC_closedialog(dlg%)
END