blostFocus en Get no ejecuta la primera vez.

blostFocus en Get no ejecuta la primera vez.

Postby jvtecheto » Thu Aug 29, 2019 3:39 pm

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  Expand view  RUN

#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 24.07 64 bits + Harbour 64 bits 3.2dev(r2407221137) + MSVC64
User avatar
jvtecheto
 
Posts: 602
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

Re: blostFocus en Get no ejecuta la primera vez.

Postby FranciscoA » Thu Aug 29, 2019 10:10 pm

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  Expand view  RUN
  oGet1:bLostfocus := {|| MsgInfo("Valor despues del LostFocus " + oGet1:cText) }
 

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: blostFocus en Get no ejecuta la primera vez.

Postby jvtecheto » Fri Aug 30, 2019 7:32 am

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 24.07 64 bits + Harbour 64 bits 3.2dev(r2407221137) + MSVC64
User avatar
jvtecheto
 
Posts: 602
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

Re: blostFocus en Get no ejecuta la primera vez.

Postby karinha » Fri Aug 30, 2019 1:20 pm

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

Code: Select all  Expand view  RUN

#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 - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7874
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: blostFocus en Get no ejecuta la primera vez.

Postby jvtecheto » Fri Aug 30, 2019 7:22 pm

Hola:

Gracias Joao

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

Un abrazo

Jose.
Fwh 24.07 64 bits + Harbour 64 bits 3.2dev(r2407221137) + MSVC64
User avatar
jvtecheto
 
Posts: 602
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 30 guests