blostFocus en Get no ejecuta la primera vez.

Post Reply
User avatar
jvtecheto
Posts: 357
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

blostFocus en Get no ejecuta la primera vez.

Post by jvtecheto »

Hola amigos:

Lo siento pero tengo que abrir un nuevo hilo sobre el tema, ya que al final creo que es un bug de la clase TGet
sino explicadme el funcionamiento de este pequeño codigo.
vereis que la primera vez el valor de la variable no la asigna y la segunda vez si la asigna.

Code: Select all

#include "fivewin.ch"

FUNCTION Main()

   LOCAL oDlg,oGet1,oGet2,cGet1 := Space( 15 ),cGet2:= Space(15)

   DEFINE DIALOG oDlg SIZE 400, 300

   @ 3, 1 GET oGet1 VAR cGet1 OF oDlg  SIZE 100, 12 PICTURE "@!" UPDATE ;
   VALID (MsgInfo("Valor antes del LostFocus "+cGet1),.T.)
   oGet1:bLostfocus := {|| MsgInfo("Valor despues del LostFocus " + cGet1) }

   @ 5, 1 GET oGet2 VAR cGet2 OF oDlg  SIZE 100, 12 PICTURE "@!" UPDATE

   ACTIVATE DIALOG oDlg CENTERED

RETURN NIL
 
No se si vosotros lo veis bien....

Saludos

Jose.
Fwh 19.06 32 bits + Harbour 3.2dev(r2011030937)+ Borland 7.4 + FivEdit
User avatar
FranciscoA
Posts: 1964
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: blostFocus en Get no ejecuta la primera vez.

Post by FranciscoA »

jvtecheto wrote:Hola amigos:

Lo siento pero tengo que abrir un nuevo hilo sobre el tema, ya que al final creo que es un bug de la clase TGet
sino explicadme el funcionamiento de este pequeño codigo.
vereis que la primera vez el valor de la variable no la asigna y la segunda vez si la asigna.

No se si vosotros lo veis bien....

Saludos

Jose.
Efectivamente, hasta en la segunda vez lo asigna.

Sin embargo, si lo pones de la siguiente forma, funciona.

Code: Select all

   oGet1:bLostfocus := {|| MsgInfo("Valor despues del LostFocus " + oGet1:cText) }
 
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh1204-MySql-TMySql
User avatar
jvtecheto
Posts: 357
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

Re: blostFocus en Get no ejecuta la primera vez.

Post by jvtecheto »

Gracias por tu interes FranciscoA.

Tienes razon , de esa manera si funciona, Pero yo creo que es un bug.

Deberia de funcionar de la primera manera.

Espero le hechen un vistazo cuando puedan.

Saludos.

Jose.
Fwh 19.06 32 bits + Harbour 3.2dev(r2011030937)+ Borland 7.4 + FivEdit
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: blostFocus en Get no ejecuta la primera vez.

Post by karinha »

C:\FWH...\samples\JOSE.PRG

Code: Select all

#include "fivewin.ch"

FUNCTION Main()

   LOCAL oDlg, oGet1, oGet2, cGet1 := Space( 20 ), cGet2:= "Cambiando Foco de Jose"
   LOCAL lCambiaJose := .F.

   DEFINE DIALOG oDlg SIZE 400, 300

   @ 3, 1 GET oGet1 VAR cGet1 OF oDlg  SIZE 100, 12 PICTURE "@!" UPDATE ;
      VALID ( MsgInfo( "Valor antes del LostFocus " + cGet1), .T. )

   oGet1:bChange = { || lCambiaJose := .T. }

   oGet1:bLostFocus := {|| If( lCambiaJose, Jose_Focus( oGet1 ), .T. ) }

   @ 5, 1 GET oGet2 VAR cGet2 OF oDlg  SIZE 100, 12 PICTURE "@!" UPDATE

   ACTIVATE DIALOG oDlg CENTERED

RETURN NIL

FUNCTION Jose_Focus( oGet1 )

   LOCAL cTxtJose

   cTxtJose := oGet1:cText

   MsgInfo( "FiveWin The Best: " + cTxtJose )

RETURN( .T. )
 
Saludos.
João Santos - São Paulo - Brasil
User avatar
jvtecheto
Posts: 357
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

Re: blostFocus en Get no ejecuta la primera vez.

Post by jvtecheto »

Hola:

Gracias Joao

Asi como tu lo haces con una funcion , si funciona bien. :D

Un abrazo

Jose.
Fwh 19.06 32 bits + Harbour 3.2dev(r2011030937)+ Borland 7.4 + FivEdit
Post Reply