WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Dialog Editor version 6.X
plus
plus

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Leading 0 in a Spinner Control


Question:

I would like to add a leading 0 to a spinner for 0-9. Is this possible?

Answer:

Sorry. Not that I know of. However you could fake it like this
#DefineSubRoutine InitDialogConstants()
  ;DialogprocOptions Constants
  MSG_INIT=0                ; The one-time initialization
  MSG_TIMER=1               ; Timer event
  MSG_BUTTONPUSHED=2        ; Pushbutton or Picturebutton
  MSG_RADIOPUSHED=3         ; Radiobutton clicked
  MSG_CHECKBOX=4            ; Checkbox clicked
  MSG_EDITBOX=5             ; Editbox or Multilinebox
  MSG_FILESELECT=6          ; Filelistbox
  MSG_ITEMSELECT=7          ; Itembox
  MSG_COMBOCHANGE=8         ; Combobox/Droplistbox
  MSG_CALENDAR=9            ; Calendar date change
  MSG_SPINNER=10            ; Spinner number change
  MSG_CLOSEVIA49=11         ; Close clicked (Enabled via Intcontrol 49)
  MSG_FILEBOXDOUBLECLICK=12 ; Get double-click message on a FileListBox
  MSG_ITEMBOXDOUBLECLICK=13 ; Get double-click message on an ItemBox
  DPO_DISABLESTATE=1000     ; codes -1=GetSetting 0=EnableDialog 1=DisableDialog
  DPO_CHANGEBACKGROUND=1001 ; -1=GetSetting otherise bitmap or color string
  ;DialogControlState Constants
  DCSTATE_SETFOCUS=1        ; Give Control Focus
  DCSTATE_QUERYSTYLE=2      ; Query control's style
  DCSTATE_ADDSTYLE=3        ; Add control style
  DCSTATE_REMOVESTYLE=4     ; Remove control style
  DCSTATE_GETFOCUS=5        ; Get control that has focus
  DCSTYLE_INVISIBLE=1       ; Set Control Invisible
  DCSTYLE_DISABLED=2        ; Set Control Disabled
  DCSTYLE_NOUSERDATA=4      ; Note: Setable via DialogControlState function ONLY SPINNER control only
  DCSTYLE_READONLY=8        ; Sets control to read-only (user cannot type in data) EDITBOX MULTILINEBOX SPINNER
  DCSTYLE_PASSWORD=16       ; Sets 'password mode' where only *'s are displayed EDITBOX
  DCSTYLE_DEFAULTBUTTON=32  ; Sets a button as the default button PUSHBUTTON PICTUREBUTTON
  DCSTYLE_DIGITSONLY=64     ; Set edit box to accept digits only EDITMOX MULTILINEBOX
  DCSTYLE_FLAT=128          ; Makes a 'flat' hyperlink-looking button PUSHBUTTON PICTUREBUTTON
  DCSTYLE_NOADJUST=256      ; Turns off auto-height adjustment  ITEMBOX FILELISTBOX
  DCSTYLE_TEXTCENTER=512    ; Center text in control VARYTEXT STATICTEXT
  DCSTYLE_TEXTRIGHT=1024    ; Flush-Right text in control VARYTEXT STATICTEXT
  ;DialogControlSet / DialogControlGet Constants
  DC_CHECKBOX=1             ; CHECKBOX
  DC_RADIOBUTTON=2          ; RADIOBUTTON
  DC_EDITBOX=3              ; EDITBOX MULTILINEBOX
  DC_TITLE=4                ; PICTURE RADIOBUTTON CHECKBOX PICTUREBUTTON VARYTEXT STATICTEXT GROUPBOX PUSHBUTTON
  DC_ITEMBOXCONTENTS=5      ; ITEMBOX FILELISTBOX DROPLISTBOX
  DC_ITEMBOXSELECT=6        ; ITEMBOX FILELISTBOX DROPLISTBOX
  DC_CALENDAR=7             ; CALENDAR
  DC_SPINNER=8              ; SPINNER
  DC_MULTITABSTOPS=9        ; MULTILINEBOX
  DC_ITEMSCROLLPOS=10       ; ITEMBOX FILELISTBOX
  DC_BACKGROUNDCOLOR=11     ; RADIOBUTTON CHECKBOX VARYTEXT STATICTEXT GROUPBOX PUSHBUTTON ITEMBOX FILELISTBOX DROPLISTBOX SPINNER EDITBOX MULTILINEBOX
  DC_PICTUREBITMAP=12       ; PICTURE PICTUREBUTTON
  DC_TEXTCOLOR=13           ; RADIOBUTTON CHECKBOX VARYTEXT STATICTEXT GROUPBOX PUSHBUTTON ITEMBOX FIELLISTBOX DROPLISTBOX SPINNER EDITBOX MULTILINEBOX
  DC_ITEMBOXADD=14          ; ITEMBOX FILELISTBOX DROPLISTBOX
  DC_ITEMBOXREMOVE=15       ; ITEMBOX FILELISTBOX DROPLISTBOX
  ;Return code constants
  RET_DO_CANCEL=0           ; Cancels dialog
  RET_DO_DEFAULT= -1        ; Continue with default processing for control
  RET_DO_NOT_EXIT= -2       ; Do not exit the dialog
  Return
#EndSubRoutine
;============================================================
;============================================================
;============================================================





InitDialogConstants()                                       ; Initialize Dialog Constants (need only be done once usually)

#DefineSubRoutine MyDialogCallbackProc(MyDialog_Handle,MyDialog_Message,MyDialog_ID,rsvd1,rsvd2)
   Switch MyDialog_Message                                  ; Switch based on Dialog Message type
      Case MSG_INIT                                         ; Standard Initialization message
;         DialogProcOptions(MyDialog_Handle,MSG_EDITBOX,@TRUE)
         DialogProcOptions(MyDialog_Handle,MSG_SPINNER,@TRUE)
         DialogControlSet(MyDialog_Handle,004,DC_EDITBOX,"00")
         Return(RET_DO_DEFAULT)

     Case MSG_BUTTONPUSHED
        Switch MyDialog_ID
           Case 001                                        ; ID 001  OK
              Return(RET_DO_DEFAULT)

           Case 002                                        ; ID 002  Cancel
              Return(RET_DO_DEFAULT)

        EndSwitch                                          ; MyDialog_ID
        Return(RET_DO_DEFAULT)

;     case MSG_EDITBOX                                      ; ID 004  edit1 Edit 1
;        return(RET_DO_DEFAULT)

     Case MSG_SPINNER                                      ; ID 003  spin 1
       spinval = DialogControlGet(MyDialog_Handle,003,DC_SPINNER)
       spinval = StrFixLeft(spinval,"0",2)
       DialogControlSet(MyDialog_Handle,004,DC_EDITBOX,spinval)
        Return(RET_DO_NOT_EXIT)

  EndSwitch                                                 ; MyDialog_Message
  Return(RET_DO_DEFAULT)
#EndSubRoutine                                              ; End of Dialog Callback MyDialogCallbackProc

spin = "0|23|1"

MyDialogFormat=`WWWDLGED,6.1`

MyDialogCaption=`WIL Dialog 1`
MyDialogX=148
MyDialogY=144
MyDialogWidth=106
MyDialogHeight=078
MyDialogNumControls=004
MyDialogProcedure=`MyDialogCallbackProc`
MyDialogFont=`DEFAULT`
MyDialogTextColor=`DEFAULT`
MyDialogBackground=`DEFAULT,DEFAULT`
MyDialogConfig=0

MyDialog001=`009,047,036,012,PUSHBUTTON,DEFAULT,"OK",1,1,32,DEFAULT,DEFAULT,DEFAULT`
MyDialog002=`053,047,036,012,PUSHBUTTON,DEFAULT,"Cancel",99,2,DEFAULT,DEFAULT,DEFAULT,DEFAULT`
MyDialog003=`061,013,012,014,SPINNER,spin,"1",DEFAULT,3,DEFAULT,DEFAULT,DEFAULT,DEFAULT`
MyDialog004=`045,013,018,014,EDITBOX,edit1,"Edit 1",DEFAULT,4,DEFAULT,"Microsoft Sans Serif|9728|40|34","0|0|0",DEFAULT`

ButtonPushed=Dialog("MyDialog")

Exit

Article ID:   W16922
File Created: 2007:07:03:14:27:04
Last Updated: 2007:07:03:14:27:04