Muchas Gracias Rafael, sos un gran Maestro!!!!!

Norberto Alvarez

 

De: [email protected] [mailto:[email protected]] En nombre de Rafael Copquin
Enviado el: lunes, 24 de junio de 2013 11:15 a.m.
Para: GUFA List Member
Asunto: [GUFA] Setfocus dentro de una Grilla

 

Para asegurarte que no entre en otra columna que la numero 6, crea una
propiedad del form, por ejemplo lEntrar
En el lostfocus del textbox de la columna 1 poné
thisform.grid1.column6.setfocus
thisform.lEntrar = .f.
Y en el when de los textbox de las columnas 2,3,4 y 5 ponés
return thisform.lEntrar
Como está en falso, no va a entrar nunca en las col 2,3,4  y 5
Si luego que ingresó en la 6 necesitás que salte a cualquiera de las otras
(2,3,4,5), volvés a setear lEntrar a .T. en el lostfocus del textbox de la 6
y también en dicho lostfocus le mandás un: thisform.grid1.column2.setfocus

Ahora bien, podría ser que aun asi te entre en la 1, porque las brujas no
existen, pero que las hay las hay, entronces, para tener control absoluto,
generá en el init de la columna 1( en el textbox) un propiedad del textbox
asi
this.addproperty('lEntrarAqui',.t.) y en su when: return this.lEntrarAqui
Eso va a dejarte entrar en la 1 cuando asi lo desees. Pero cuando estás en
la 6, si querés asegurarte de que no va a entrar en la 1 de ninguna forma,
agregale al lostfocus (siempre en el textbox),
thisform.grid1.column1.text1.lEntrarAqui = .f.
En ese caso, estás forzando sin lugar a dudas que el cursor salte a la col 2
( o a la que le mandaste el foco), sin entrar en la 1. Y cuando quieras
volver a entrar en la col 1, simplemente mandale un .t. a
thisform.grid1.column1.text1.lEntrarAqui

Parece confuso, pero si lo pensás, jugando con las propiedades del fom y de
los textboxes y los métodos setfocus, lostfocus, when y valid de los
textboxes, lográs todo el control que necesitás

Rafael Copquin



El 24/06/2013 08:27 a.m., Norberto Mario Alvarez escribió:

Estimados Colisteros, me estoy enloqueciendo con un tema, estoy insertando
registros en una grilla, ingreso el código en la columna1 por primera vez
perfectamente se va a la columna 6 como le indica el setfocus(), pero cuando
vuelvo agregar otro registro ya no me respeta el setfocus() y se va a la
columna 2. Lo mismo me hace cuando hago click en un botón, el cual me trae
un buscador donde selecciono un regsitros, y hago un setfocus a una
determinada columna de una grilla, se queda enfocado en el botón. Pregunta
me está faltando algo, no le encuentro la vuelta. Desde ya muchas gracias
por su atención .

 

 

Norberto Alvarez

Socio # 1892

 

 

Responder a