ven. 10 février 2017, 14h58
eddymaue
atoutfox.public.association
Re: ne pas passer à la colonne suivante
je savais que j'avais caché ça quelque part entre mes 2 oreilles ;-)
**************************************************
* avec cette technique c'est toi qui gère les mouvements
* sur la grille alors qu'avec un Return .f. dans l'évennement Valid
* tu textbox n'agit que sur la colonne ou ce trouve
* ce control
**************************************************
* L'effet souhaiter dans cet exemple est que lorque tu
* fait "Enter" on passe à ranger suivante sans
* changer de colonne
**************************************************
*=================================================
Proc Grid1.init
this.AddProperty( 'CurrentRow',-1 )
this.AddProperty( 'CurrentCol',-1 )
*=================================================
Proc Gri1.AfterRowColChange
Lparameters nColIndex
#Define KEY_TAB 9
#Define KEY_TAB_SHIFT 18
#Define KEY_TAB_CTRL 148
#define KEY_UP 5
Local lnKey As Integer
Store 0 To lnKey
lnKey = lastkey()
*!* activate screen
*!* ? lnKey
Do Case
Case Inlist(lnKey ;
, KEY_TAB , KEY_TAB_CTRL , KEY_TAB_SHIFT , KEY_UP)
* On ne fait rien
Otherwise
This.ActivateCell(This.CurrentRow +1, This.CurrentCol)
Endcase
*=================================================
Proc BeforeRowColChange
LPARAMETERS nColIndex
this.CurrentRow = this.ActiveRow
this.CurrentCol = this.ActiveColumn
**************************************************
* bonne journée
**************************************************
--
a+ Eddy
L'incompréhensible se réalise toujour avant le compréhensible parce que
tout simplement on ne l'a pas encore assimilé
Permalink : http://www.atoutfox.org/nntp.asp?ID=0000018101