Article ID: 131300
Article Last Modified on 2/15/2000
oForm1=CREATE('myform')
oForm1.SHOW
*:*************************************************************************
*:
*: Class: myform BaseClass: FORM
*:
*:*************************************************************************
DEFINE CLASS myform AS FORM
Dimension astep(4,1)
WindowType=1
ADD OBJECT combo1 AS COMBOBOX WITH HEIGHT = 37,LEFT = 48,;
STYLE = 2,TOP = 24
ADD OBJECT cmdenable AS COMMANDBUTTON WITH TOP = 72,LEFT = 48,;
HEIGHT = 37,WIDTH = 157,CAPTION = "Enable Steps 2-4"
PROCEDURE cmdenable.CLICK
DO CASE
* The case statement takes into account the fact that the
* value can be a character. It then goes through the list
* and finds the index that corresponds to the current value
* and resets the listindex.
CASE TYPE('THISFORM.COMBO1.VALUE')="C"
IF THISFORM.combo1.VALUE <> ;
THISFORM.combo1.LIST(THISFORM.combo1.LISTINDEX)
i = 1
lexit=.F.
DO WHILE i <= THISFORM.combo1.LISTCOUNT AND lexit=.F.
IF THISFORM.combo1.LIST(i)=THISFORM.combo1.VALUE
nNewIndex=i
lexit=.T.
ENDIF
i=i+1
ENDDO
THISFORM.combo1.LISTINDEX=nNewIndex
ENDIF
CASE TYPE('Thisform.combo1.value')="N"
IF THISFORM.combo1.VALUE<> THISFORM.combo1.LISTINDEX
THISFORM.combo1.LISTINDEX=THISFORM.combo1.VALUE
ENDIF
ENDCASE
FOR m.i = 2 TO 4
THisform.aStep[m.i, 1] = STRTRAN(Thisform.aStep[m.i, 1], '\')
ENDFOR
THISFORM.combo1.REQUERY
ENDPROC
PROCEDURE INIT
This.aStep[1,1] = 'Step 1'
This.aStep[2,1] = '\Step 2'
This.aStep[3,1] = '\Step 3'
This.aStep[4,1] = '\Step 4'
THIS.combo1.ROWSOURCETYPE = 5
THIS.combo1.ROWSOURCE = 'Thisform.aStep'
THIS.combo1.VALUE = 1
ENDPROC
ENDDEFINE
Additional query words: VFoxWin
Keywords: kbcode KB131300