FoxPro/Visual FoxPro - MOVERSE POR UN GRID ...

 
Vista:

MOVERSE POR UN GRID ...

Publicado por Juanma (503 intervenciones) el 01/12/2003 13:03:02
Hola ...

Tengo un Grid con 6 Columnas e intento que estando movimiendome por la cuadrilla y si estoy en la ultima columna y pulso intro me pase a la linea de abajo.
Lo he intentado de varias formas, pero no me sale

Lostfocus event:
if lastkey()=13.and.this.column6.setfocus
keyboard chr(24)
endif


Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:MOVERSE POR UN GRID ...

Publicado por Roman Suazo (2723 intervenciones) el 01/12/2003 17:23:49
En el evento beforerowcolchange del grid pon esto:if

if this.activecolumn==6
this.activatecell(this.activerow+1,1)
else
dodefault(nColIndex)
endif

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Roman Suazo (2723 intervenciones) el 01/12/2003 17:31:53
ok, solo falta un detallito (la tecla), con esto basta:

if this.activecolumn==2 .and. lastkey()=13
this.activatecell(this.activerow+1,1)
else
dodefault(nColIndex)
endif

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Jm (503 intervenciones) el 01/12/2003 21:04:34
Gracias Roman .... pero esto me funciona con las lineas que aparecen en la primera pagina del grid .... cuando se despalaza a la segunda pagina ya no me funciona ...¿Porque?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Roman Suazo (2723 intervenciones) el 01/12/2003 21:58:58
Me podrias aclarar un poco el asunto? no entiendo la parte 'cuando se despalaza a la segunda pagina', te refieres a un grid en el cual hay muchos registros y por lo tanto hay algunos que no se miran?
En el codigo que te di hay un errorsito, el cual se soluciona asi:
if this.activecolumn==6 .and. lastkey()=13. Aunque me imagino que no te
refieres a eso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Jm (503 intervenciones) el 02/12/2003 01:07:33
Gracias Roman por tu amabilidad .... me refiero a ...en mi grid cuando lo abro se ven de la linea 1 a la 12, pues en esas lineas lo hace bien, pero ... a partir de la linea 13, 14 ... etc hasta la ultima ya no lo hace.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Roman Suazo (2723 intervenciones) el 02/12/2003 17:33:55
Ok, investrigando un poco mas con otros colegas llegue sacar este codigo el cual de plano te servira:

Crea una nueva propiedad al formulario llamada iultimatecla
En la propiedade keypreview de la forma pon: .T.
En el keypress del formulario pon este codigo:

this.iultimatecla=alltrim(str(nKeyCode))

En el evento losfocus del control de la ultima columna del grid (o de la
columna que quieras ) pon

IF thisform.iUltimaTecla=='13'
KEYBOARD '{DNARROW}'

with this.parent.parent
.columns(1).setfocus
.refresh
endwith

endif

Ya ahora no tendrias problemas.

Saludos

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: me olvide de ...

Publicado por Jm (503 intervenciones) el 03/12/2003 14:18:32
Muchas gracias Roman por tu ayuda desinteresada y por todas las molestias que te he causado ... ahora va todo bien ...que pases buen dia.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar