May 09, 2024, 09:50:56 PM

News:

Own IWBasic 2.x ? -----> Get your free upgrade to 3.x now.........


Unable to tab in dialog

Started by Brian, May 11, 2008, 10:57:27 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Brian

Help,

I'm beating my brains out here - why or why can't i tab between these
edit boxes?

autodefine "off"

INT x
DIALOG win

CONST GROUP_1 = 1
CONST GROUP_2 = 2
CONST GROUP_29 = 29
CONST GROUP_30 = 30
CONST STATIC_3 = 3
CONST STATIC_4 = 4
CONST STATIC_5 = 5
CONST STATIC_6 = 6
CONST STATIC_7 = 7
CONST STATIC_8 = 8
CONST STATIC_9 = 9
CONST STATIC_10 = 10
CONST STATIC_11 = 11
CONST STATIC_12 = 12
CONST STATIC_13 = 13
CONST STATIC_14 = 14
CONST STATIC_15 = 15
CONST EDIT_16 = 16
CONST EDIT_17 = 17
CONST EDIT_18 = 18
CONST EDIT_19 = 19
CONST EDIT_20 = 20
CONST EDIT_21 = 21
CONST EDIT_22 = 22
CONST EDIT_23 = 23
CONST EDIT_24 = 24
CONST EDIT_25 = 25
CONST EDIT_26 = 26
CONST EDIT_27 = 27

CREATEDIALOG win,0,0,384,332,0x80CA0080,0,"PostCount",&main
CONTROL win,@GROUPBOX," Baildon ",12,32,174,192,0x50000007,GROUP_1
CONTROL win,@GROUPBOX," Horsforth ",198,32,174,192,0x50000007,GROUP_2
CONTROL win,@GROUPBOX," Combined Totals ",12,232,174,50,0x50000007,GROUP_29
CONTROL win,@GROUPBOX," Total Savings ",198,232,174,50,0x50000007,GROUP_30

CONTROL win,@STATIC,"Week Commencing:",12,10,360,20,0x5000010B,STATIC_3
CONTROL win,@STATIC,"Monday",19,52,70,20,0x5000010B,STATIC_4
CONTROL win,@STATIC,"Tuesday",19,81,70,20,0x5000010B,STATIC_5
CONTROL win,@STATIC,"Wednesday",19,110,70,20,0x5000010B,STATIC_6
CONTROL win,@STATIC,"Thursday",19,139,70,20,0x5000010B,STATIC_7
CONTROL win,@STATIC,"Friday",19,168,70,20,0x5000010B,STATIC_8
CONTROL win,@STATIC,"Weekly Total",19,197,70,20,0x5000010B,STATIC_9
CONTROL win,@STATIC,"Monday",211,52,70,20,0x5000010B,STATIC_10
CONTROL win,@STATIC,"Tuesday",211,81,70,20,0x5000010B,STATIC_11
CONTROL win,@STATIC,"Wednesday",211,110,70,20,0x5000010B,STATIC_12
CONTROL win,@STATIC,"Thursday",211,139,70,20,0x5000010B,STATIC_13
CONTROL win,@STATIC,"Friday",211,168,70,20,0x5000010B,STATIC_14
CONTROL win,@STATIC,"Weekly Total",211,197,70,20,0x5000010B,STATIC_15

CONTROL win,@EDIT,"",101,49,70,20,0x50800000,EDIT_16
CONTROL win,@EDIT,"",101,78,70,20,0x50800000,EDIT_17
CONTROL win,@EDIT,"",101,107,70,20,0x50800000,EDIT_18
CONTROL win,@EDIT,"",101,136,70,20,0x50800000,EDIT_19
CONTROL win,@EDIT,"",101,165,70,20,0x50800000,EDIT_20
CONTROL win,@EDIT,"",101,194,70,20,0x50800000,EDIT_21
CONTROL win,@EDIT,"",292,49,70,20,0x50800000,EDIT_22
CONTROL win,@EDIT,"",292,78,70,20,0x50800000,EDIT_23
CONTROL win,@EDIT,"",292,107,70,20,0x50800000,EDIT_24
CONTROL win,@EDIT,"",292,136,70,20,0x50800000,EDIT_25
CONTROL win,@EDIT,"",292,194,70,20,0x50800000,EDIT_26
CONTROL win,@EDIT,"",292,165,70,20,0x50800000,EDIT_27

   SHOWDIALOG win
FOR x=EDIT_16 TO EDIT_27
   SETCONTROLNOTIFY(win,x,1,1)
NEXT x
   SETFOCUS win,EDIT_16

WAITUNTIL win.hWnd=0
   END

SUB main
   SELECT @MESSAGE
CASE @IDCONTROL
IF @CONTROLID >= EDIT_16 AND @CONTROLID <= EDIT_27
'Set the focus of the next control
IF @NOTIFYCODE=@ENENTERKEY OR @NOTIFYCODE=@ENTABKEY
   SETFOCUS win,@CONTROLID+1
ENDIF
'Set the background color of the edit control
IF @NOTIFYCODE=@ENKILLFOCUS
   SETCONTROLCOLOR win,@CONTROLID,0,0xFFFFFF
ENDIF
IF @NOTIFYCODE=@ENSETFOCUS
   SETCONTROLCOLOR win,@CONTROLID,0,0xFFC94B
ENDIF:ENDIF
CASE @IDINITDIALOG
   CENTERWINDOW win
CASE @IDCLOSEWINDOW
   CLOSEDIALOG win,@IDOK
ENDSELECT
RETURN:ENDSUB

Many thanks,

Brian

Brian

Errr, forget that - must be the weather or something...

I forgot to put in @TABSTOP

Sorry

Brian

aurelCB

You must use @tabstop see code:
INT x
DIALOG win

CONST GROUP_1 = 1
CONST GROUP_2 = 2
CONST GROUP_29 = 29
CONST GROUP_30 = 30
CONST STATIC_3 = 3
CONST STATIC_4 = 4
CONST STATIC_5 = 5
CONST STATIC_6 = 6
CONST STATIC_7 = 7
CONST STATIC_8 = 8
CONST STATIC_9 = 9
CONST STATIC_10 = 10
CONST STATIC_11 = 11
CONST STATIC_12 = 12
CONST STATIC_13 = 13
CONST STATIC_14 = 14
CONST STATIC_15 = 15
CONST EDIT_16 = 16
CONST EDIT_17 = 17
CONST EDIT_18 = 18
CONST EDIT_19 = 19
CONST EDIT_20 = 20
CONST EDIT_21 = 21
CONST EDIT_22 = 22
CONST EDIT_23 = 23
CONST EDIT_24 = 24
CONST EDIT_25 = 25
CONST EDIT_26 = 26
CONST EDIT_27 = 27

CREATEDIALOG win,0,0,384,332,0x80CA0080,0,"PostCount",&main
CONTROL win,@GROUPBOX," Baildon ",12,32,174,192,0x50000007,GROUP_1
CONTROL win,@GROUPBOX," Horsforth ",198,32,174,192,0x50000007,GROUP_2
CONTROL win,@GROUPBOX," Combined Totals ",12,232,174,50,0x50000007,GROUP_29
CONTROL win,@GROUPBOX," Total Savings ",198,232,174,50,0x50000007,GROUP_30

CONTROL win,@STATIC,"Week Commencing:",12,10,360,20,0x5000010B,STATIC_3
CONTROL win,@STATIC,"Monday",19,52,70,20,0x5000010B,STATIC_4
CONTROL win,@STATIC,"Tuesday",19,81,70,20,0x5000010B,STATIC_5
CONTROL win,@STATIC,"Wednesday",19,110,70,20,0x5000010B,STATIC_6
CONTROL win,@STATIC,"Thursday",19,139,70,20,0x5000010B,STATIC_7
CONTROL win,@STATIC,"Friday",19,168,70,20,0x5000010B,STATIC_8
CONTROL win,@STATIC,"Weekly Total",19,197,70,20,0x5000010B,STATIC_9
CONTROL win,@STATIC,"Monday",211,52,70,20,0x5000010B,STATIC_10
CONTROL win,@STATIC,"Tuesday",211,81,70,20,0x5000010B,STATIC_11
CONTROL win,@STATIC,"Wednesday",211,110,70,20,0x5000010B,STATIC_12
CONTROL win,@STATIC,"Thursday",211,139,70,20,0x5000010B,STATIC_13
CONTROL win,@STATIC,"Friday",211,168,70,20,0x5000010B,STATIC_14
CONTROL win,@STATIC,"Weekly Total",211,197,70,20,0x5000010B,STATIC_15

CONTROL win,@EDIT,"",101,49,70,20,@TABSTOP,EDIT_16
CONTROL win,@EDIT,"",101,78,70,20,@TABSTOP,EDIT_17
CONTROL win,@EDIT,"",101,107,70,20,0x50800000,EDIT_18
CONTROL win,@EDIT,"",101,136,70,20,0x50800000,EDIT_19
CONTROL win,@EDIT,"",101,165,70,20,0x50800000,EDIT_20
CONTROL win,@EDIT,"",101,194,70,20,0x50800000,EDIT_21
CONTROL win,@EDIT,"",292,49,70,20,0x50800000,EDIT_22
CONTROL win,@EDIT,"",292,78,70,20,0x50800000,EDIT_23
CONTROL win,@EDIT,"",292,107,70,20,0x50800000,EDIT_24
CONTROL win,@EDIT,"",292,136,70,20,0x50800000,EDIT_25
CONTROL win,@EDIT,"",292,194,70,20,0x50800000,EDIT_26
CONTROL win,@EDIT,"",292,165,70,20,0x50800000,EDIT_27

   SHOWDIALOG win
FOR x=EDIT_16 TO EDIT_27
   SETCONTROLNOTIFY(win,x,1,1)
NEXT x
   SETFOCUS win,EDIT_16

WAITUNTIL win.hWnd=0
   END

SUB main
   SELECT @MESSAGE
CASE @IDCONTROL
IF @CONTROLID >= EDIT_16 AND @CONTROLID <= EDIT_27
'Set the focus of the next control
IF @NOTIFYCODE=@ENENTERKEY OR @NOTIFYCODE=@ENTABKEY
   SETFOCUS win,@CONTROLID+1
ENDIF
'Set the background color of the edit control
IF @NOTIFYCODE=@ENKILLFOCUS
   SETCONTROLCOLOR win,@CONTROLID,0,0xFFFFFF
ENDIF
IF @NOTIFYCODE=@ENSETFOCUS
   SETCONTROLCOLOR win,@CONTROLID,0,0xFFC94B
ENDIF:ENDIF
CASE @IDINITDIALOG
   CENTERWINDOW win
CASE @IDCLOSEWINDOW
   CLOSEDIALOG win,@IDOK
ENDSELECT
RETURN:ENDSUB