FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema con bLostFocus
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 11:22 AM
Tengo el siguiente c贸digo:

   REDEFINE GET oGetArticulo VAR cArticulo ID 140 OF oDlg PICTURE '@!S12' UPDATE
   oGetArticulo:bLostFocus := { || oBtnBusArt:Hide(), oBtnGama:Hide(), SetKey( VK_F2, nil ) }
   
   REDEFINE BUTTON oBtnBusArt ID 2060 OF oDlg ACTION Bus_Art( oDlg, oGetArticulo )


Cuando oGetArticulo tiene el foco, pinchamos oBtnBusArt, oGetArticulo pierde foco, ejecuta el bloque de c贸digo de oGetArticulo:bLostFocus desde donde se oculta el bot贸n oBtnBusArt y por tanto no se eval煤a el ACTION de oBtnBusArt

Alguien sabe como puedo solucionar esto? Realmente la metodolog铆a que necesito es la descrita, pero evalu谩ndose el ACTION del bot贸n.

Gracias y Saludos!
Posts: 299
Joined: Mon Oct 22, 2007 03:03 PM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 04:27 PM

PRUEBA CON bGotFocus (se evalua cuando tiene el foco)

DE TODAS FORMAS, YO MANEJO LAS CONSULTAS EN LINEA ASIGNANDOSELAS A LA TECLA F4

Y HACIENDO LO SIGUIENTE:

  REDEFINE GET  oGet   VAR cGet  ID 201 OF oDlg    ;
           MESSAGE "Coloque Informaci贸n (F4:Lista)";
           PICTURE "@!"
  // DEFINICION DE F4->LISTA
  bGet:={ || (xGet:=consulta(oGet,"CGETID",oDlg),; // EN consulta.prg (oObjeto,"IDENTIFICADOR",oDlg)
                IIF(LEN(ALLTRIM(xGetSel))>0,(oGet:Varput(cGetId),oGet:Refresh()),),;
                          oGetId:setfocus())}
  oGet:bKeyDown      := {|nKey| IIF(nKey==VK_F4,EVAL(bGet),)}

ESPERO TE SIRVA DE ALGO

Saludos



Angel, Valencia, Venezuela



xH .997 - FW 7.9 - BCC55 - WorkShop - MySql
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 04:31 PM
intenta esto...
REDEFINE GET oGetArticulo VAR cArticulo ID 140 OF oDlg PICTURE '@!S12' UPDATE ;
VALID( oBtnBusArt:hide(), .t.) 

REDEFINE BUTTON oBtnBusArt ID 2060 OF oDlg ACTION Bus_Art( oDlg, oGetArticulo )

oGetArticulo:bGotFocus( {|| oBtnBusArt:Show() } )
oBtnBusArt:bLostFocus({|| oBtn:hide() } ) 

ACTIVATE DIALOG oDlg ON INIT oBtnBusArt:hide()
Posts: 299
Joined: Mon Oct 22, 2007 03:03 PM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 04:40 PM

QUIZAS ESTO SE SIRVA

REDEFINE GET oGetArticulo VAR cArticulo ID 140 OF oDlg PICTURE '@!S12' UPDATE ;
VALID( oBtnBusArt:disable(), .t.)

REDEFINE BUTTON oBtnBusArt ID 2060 OF oDlg ACTION Bus_Art( oDlg, oGetArticulo )

oGetArticulo:bGotFocus( {|| oBtnBusArt:Enable() } )

ACTIVATE DIALOG oDlg ON INIT oBtnBusArt:Disable()

Saludos



Angel, Valencia, Venezuela



xH .997 - FW 7.9 - BCC55 - WorkShop - MySql
Posts: 299
Joined: Mon Oct 22, 2007 03:03 PM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 04:44 PM

Y EXACTAMENTE, QUE ES LO QUE QUIERES:
1) QUE DESPLEGUE UN LISTA DE LOS VALORES CUANDO PRESIONES EL BOT脫N?,O
2) QUE SE PRENDA EL BOTON CUANDO HAYAS COLOCADO ALG脷N VALOR EN EL GET

Saludos



Angel, Valencia, Venezuela



xH .997 - FW 7.9 - BCC55 - WorkShop - MySql
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema con bLostFocus
Posted: Mon Oct 06, 2008 05:51 PM

David,

El bot贸n lo podr铆as ocultar desde su propia acci贸n:

REDEFINE BUTTON oBtn ... ACTION ( oBtn:Hide(), ... )

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Tue Oct 07, 2008 06:58 AM
Exactamente lo que necesitaba es que ese bot贸n est茅 s贸lo presente y activo, mientras estoy en el Get. Es un bot贸n que abre un di谩logo de b煤squeda para los posibles valores de ese campo. Por tanto, s贸lo debe estar activo, cuando est谩 el foco en ese Get. Cuando no est谩s en ese campo, debe estar oculto. Con Enable y Disable, sigue sucediendo lo mismo (si lo sustituyo tal como lo tengo en mi c贸digo por los Hide y Show) si lo desactivo desde el oGetArticulo:bLostFocus, que al pulsar el bot贸n, el Get pierde el foco, evalua el oGetArticulo:bLostFocus donde se desactiva el bot贸n y por tanto no ejecuta tampoco la acci贸n del ACTION del bot贸n...
Ahora bien, las soluciones que me hab茅is planteado, el desactivarlo desde el VALID del oGetArticulo o bien desde ACTION del propio boton me han funcionado perfectamente.

El problema que me surge ahora, es que al ponerle una cl谩usula VALID en el oGetArticulo y pulsar el bot贸n para buscar, ese cl谩usula se eval煤a y no deja abrirse el di谩logo de b煤squeda, puesto que el oGetArticulo no tiene un valor v谩lido...

   REDEFINE GET oGetArticulo VAR cArticulo ID 140 OF oDlg PICTURE '@!S12' UPDATE;
   VALID ( oBtnBusArt:Hide(), Clave_Ok( "Art", cArticulo, 1 ) )
 
   oGetArticulo:bLostFocus := { || oBtnGama:Hide(), SetKey( VK_F2, nil ) } 
    
   REDEFINE BUTTON oBtnBusArt ID 2060 OF oDlg ACTION Bus_Art( oDlg, oGetArticulo )


Saudos!
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Problema con bLostFocus
Posted: Tue Oct 07, 2008 11:26 AM

Triumvirato:

Posiblemente la soluci贸n sea la clase BtnGet.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Tue Oct 07, 2008 02:40 PM
Armando wrote:Triumvirato:

Posiblemente la soluci贸n sea la clase BtnGet.

Saludos


Armando, gracias... no conozco esa clase, no la tengo, estoy con FWH805... puede ser que no la tenga?

Saludos!
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Problema con bLostFocus
Posted: Tue Oct 07, 2008 03:03 PM
triumvirato wrote:
El problema que me surge ahora, es que al ponerle una cl谩usula VALID en el oGetArticulo y pulsar el bot贸n para buscar, ese cl谩usula se eval煤a y no deja abrirse el di谩logo de b煤squeda, puesto que el oGetArticulo no tiene un valor v谩lido...


valida el get solo cuando tengas un valor, cuando arroje FALSE el valid borras el contenido del get.
permite que pase con el get vacio y en el SAVE validas que no este en blanco el get.
si no prueba con la suguerencia del btnget, con la version actual de FWH esa funcion viene incluida, es bastante util
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Wed Oct 08, 2008 06:51 AM
mcfox wrote:
valida el get solo cuando tengas un valor, cuando arroje FALSE el valid borras el contenido del get.
permite que pase con el get vacio y en el SAVE validas que no este en blanco el get.
si no prueba con la suguerencia del btnget, con la version actual de FWH esa funcion viene incluida, es bastante util


Si, algo as铆 hab铆a pensado, pero no tengo un "SAVE", por tanto no puedo permitir un valor en blanco. Lo que s铆 me he dado cuenta es que con un Set Key, no se ejecuta el VALID del Get y lo que necesito es esa misma funcionalidad, que cuando se pulse ese bot贸n, no se haga ese VALID.

Gracias.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema con bLostFocus
Posted: Wed Oct 08, 2008 07:52 AM

David,

Como te han indicado, puedes probar:

REDEFINE GET ... ACTION ... BITMAP <cBmpName>

y FiveWin construye un bot贸n dentro del propio GET.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Wed Oct 08, 2008 08:01 AM
Antonio Linares wrote:David,

Como te han indicado, puedes probar:

REDEFINE GET ... ACTION ... BITMAP <cBmpName>

y FiveWin construye un bot贸n dentro del propio GET.


Antonio,

REDEFINE GET oGetDescuento VAR alk_dt1w ID 160 OF oDlg PICTURE '@EZ 99.99' UPDATE;
ACTION Bus_Art( oDlg, oGetArticulo ) BITMAP "basket.bmp"


Obtengo el siguiente Error
c:\Fivewin\gesco\ventas.prg(122) Error E0030 Syntax error: "syntax error at 'GET'

Uso FWH805 y creo que no dispongo de esa opci贸n...

Saludos!
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema con bLostFocus
Posted: Wed Oct 08, 2008 08:04 AM

David,

Tienes que descargar una versi贸n m谩s reciente de FWH.

Hoy estoy de viaje en un seminario. Ma帽ana regreso a la oficina y te ayudo en caso de que necesites nuevas claves, etc. :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Problema con bLostFocus
Posted: Wed Oct 08, 2008 08:37 AM
Antonio Linares wrote:David,

Tienes que descargar una versi贸n m谩s reciente de FWH.

Hoy estoy de viaje en un seminario. Ma帽ana regreso a la oficina y te ayudo en caso de que necesites nuevas claves, etc. :-)


Antonio,

Muchas gracias. Necesitar茅 esa ayuda, espero a ma帽ana.