|
ES_NUMBER = 8192 INSTALL @lib$+"WINLIB2" dlg% = FN_newdialog("test1",100,100,100,100,8,200) PROC_editbox(dlg%,"50",101,10,10,50,10,ES_NUMBER) PROC_dlgctrl(dlg%,"",102,0,0,0,0,&50000096,"msctls_updown32") PROC_showdialog(dlg%) UDM_SETRANGE = 1125 SYS "SendDlgItemMessage", !dlg%, 102, UDM_SETRANGE, 0, (0 << 16) + 100 SYS "SetDlgItemText", !dlg%, 101, "40" ON ERROR PROC_closedialog(dlg%):PRINT REPORT$:END ON CLOSE PROC_closedialog(dlg%):QUIT ON SYS PROCDoSys(@wparam%,@lparam%) REPEAT WAIT 1 UNTIL FALSE PROC_closedialog(dlg%) END : DEFPROCDoSys(w%,l%) LOCAL n%,t% CASE (w% AND &FF) OF WHEN 101: n%=VAL(FNgetdlgtext(dlg%, 101)) t%=n% MOD 5 IF t%<>0 THEN IF t%<3 THEN n%+=5-t% ELSE n%-=t% SYS "SetDlgItemText", !dlg%, 101, STR$(n%) ENDIF ENDCASE ENDPROC : DEF FNgetdlgtext(dlg%, id%) LOCAL text% DIM text% LOCAL 255 SYS "GetDlgItemText", !dlg%, id%, text%, 255 = $$text%
|