AYUDA CON FOLDER

Post Reply
User avatar
A&C
Posts: 214
Joined: Sat Aug 19, 2006 1:37 pm
Location: Chile

AYUDA CON FOLDER

Post by A&C »

HOLA AL FORO YO NUEVAMENTE CON DILEMAS

MIREN TENGO UN DIALOGO DENTRO UN FOLDER CON DOS PESTAÑAS,, EN CADA UNA DE ELLAS UNOS GET, BROWSE, ETC..

EL PROBLEMA ES Q CUANDO PINCHO LAS SOLAPAS DE LA SEGUNDA PESTAÑA DEL FOLDER SE EJECUTA LA INSTRUCCION VALID DEL PRIMER GET,, ES RARO ES,, AL PRINCIPIO LO HACIA EN LA PRIMERA PESTAÑA DEL FOLDER EN LA VALID DEL PRIMER GET (Ojo las dos pestañas del folder tienen los mismo objetos,,),, PERO LO SOLUCIONES DANDOLE EL SETFOCUS AL GET CON ON INIT del dialogo...

la pregunta del millon como le digo que cuando pinche la segunda pestaña del folder el get que tiene el valid reciba el foco..


GRACIAS DE ANTEMANO
Javier LLoris
Posts: 12
Joined: Thu Aug 31, 2006 6:25 pm

Ayuda con Folder

Post by Javier LLoris »

El folder tiene la clausula ON CHANGE que sirve para saber cuando se cambia de pestaña.

Ejemplo:

ON CHANGE ( IIf( oFolder:nOption == 1, oGet1:SetFocus(), oGet2:SetFocus() )

Esto posicionaria el foco en el objeto oGet1 si esta en la solapa 1 y si esta en otra en el objeto oGet2.
Javier LLoris
Posts: 12
Joined: Thu Aug 31, 2006 6:25 pm

Ayuda con Folder

Post by Javier LLoris »

El folder tiene la clausula ON CHANGE que sirve para saber cuando se cambia de pestaña.

Ejemplo:

ON CHANGE ( IIf( oFolder:nOption == 1, oGet1:SetFocus(), oGet2:SetFocus() )

Esto posicionaria el foco en el objeto oGet1 si esta en la solapa 1 y si esta en otra en el objeto oGet2.
User avatar
A&C
Posts: 214
Joined: Sat Aug 19, 2006 1:37 pm
Location: Chile

AYUDA CON FOLDER

Post by A&C »

EL PROBLEMA DEBE SER OTRO APLIQUE LO Q DIJISTE Y AUNQUE DA EL FOCO AL GET,, AUN SE SIGUE EJECUTANDO EL VALID DEL GET,, Y NOSE PORQUE... SE SUPONE Q EL VALID SOLO DEBERIA VALIDAR LA SALIDA DEL GET VERDAD,,

ALGUNA SUGERENCIA

GRACIAS
manuramos
Posts: 219
Joined: Mon Dec 26, 2005 7:25 pm
Location: Jerez de la Frontera (Spain)

Post by manuramos »

Podrías modificar la clase TGET para que por defecto se ejecute el VALID, pero que mediante un nuevo DATA, puesto a 'false', éste no se ejecute.

Me explico, podrías añadir:

DATA lValidar AS LOGIC INIT .T.

Después en el METHOD lValid()

cambiar:

if ::oGet:BadDate
Tone( 100, 3 )
return .f.
else
...

por:

if ::oGet:BadDate
Tone( 100, 3 )
return .f.
elseif !::lValidar
return .T.
else
...

De esta manera, el Valid sólo se ejecuta cuando ::lValidar está en .T. (Defecto)

Finalmente, podrías poner en el ON CHANGE de la 1ª pesataña oGet:lValidar := .F., y en el de la 2ª oGet:lValidar := .T. o algo así, de manera que cuando pinchas en la segunda pestaña el Get en cuestión no se valida y cuando vuelves a la primera se vuelve a activar la validación del Get.

Debería funcionar, a no ser que el método de validación del GET se ejecute antes que el ON CHANGE del Folder, en cuyo caso habrá que poner lValidar := .F. en un lugar más apropiado, o sujeto a condiciones más específicas.

Por probar no pierdfes nada.

Un saludo
Nos Gusta Programar
Post Reply