Page 1 of 2
¿bChange con BTNBMP no funciona?
Posted: Sun Oct 21, 2018 4:16 pm
by JoseAlvarez
Hola a todos los amigos del foro.
Feliz y Bendecido Domingo para todos y que Dios nos Bendiga.
Tengo un botón dentro de un dialogo, el cual al se inicia en modo DISABLE()
Al lado de ese botón está un get, con el que pretendo controlar el enable/disale del boton.
Es decir, si el get esta vacío, el botón debe estar disable, pero si escribo aunque sea una letra deberá estar enable automaticamente y al instante.
Lo mismo quiero que suceda a la inversa, o sea si tengo algun valor en la variable get, y elimino ese valor, el boton debe quedar disable.
Tanto el get como el boton son creados desde recursos (worshop) el boton es BTNBMP
Anteriormente lo hacia con bChange del control
BUTTOM , con dos lineas sencillas asi:
Code: Select all | Expand
Redefine get oGetNickEmpresa Var cNickEmpresa Id 100 of oDlgAcceso Font _oFontGets
oGetNickEmpresa:bChange:={ || iif( !Empty(cNickEmpresa) , oBtnVerificar:Enable(), oBtnVerificar:Disable()),oBtnVerificar:Refresh(),.t. }
y funcionaba perfecto, pero con el BTNBMP no quiere funcionar.
Al iniciar el dialogo, escribo algun valor en el campo y hasta que no le de ENTER el boton no se activa.
De igual manera, si selecciono el valor del campo con el mouse y presiono DEL o lo elimino con right click, el botón se desactiva, pero si elimino el valor letra a letra con DEL o con BACKSPACE, al quedar vacío, el boton sigue enable, cuando debería pasar a disable
¿alguna idea de que puede estar pasando o como solucionarlo?
acá un pequeño video donde muestro graficamente la situacion:
http://softwarebinario.com/descargas/muestra.wmv
Re: ¿bChange con BTNBMP no funciona?
Posted: Mon Oct 22, 2018 1:05 pm
by karinha
Re: ¿bChange con BTNBMP no funciona?
Posted: Mon Oct 22, 2018 1:49 pm
by karinha
Code: Select all | Expand
#include "FiveWin.ch"
STATIC oBtn1, oBtn2
function Main()
local oDlg, cPassw := Space( 10 ), oGet
DEFINE DIALOG oDlg TITLE "BtnBmp Test" SIZE 400, 200
@ 1, 2 SAY "User:"
@ 1, 5 GET oGet VAR cPassw PASSWORD
oGet:bChange:={ || iif( !Empty(cPassw) , oBtn1:Enable(), ;
oBtn1:Disable() ), ;
oBtn1:Refresh(), .T. }
@ 50, 40 BTNBMP oBtn1 PROMPT "Ok" SIZE 40, 15 NOBORDER ;
ACTION oDlg:End()
@ 50, 110 BTNBMP oBtn2 PROMPT "Cancel" SIZE 40, 15 NOBORDER ;
ACTION oDlg:End()
oBtn2:lCancel := .T.
ACTIVATE DIALOG oDlg CENTERED
return nil
Re: ¿bChange con BTNBMP no funciona?
Posted: Mon Oct 22, 2018 4:03 pm
by JoseAlvarez
Hola Karinha!
Gracias por tu ayuda y respuesta. Pero es asi como lo tengo y no me está funcionando.
Alguna otra sugerencia??
Re: ¿bChange con BTNBMP no funciona?
Posted: Mon Oct 22, 2018 5:47 pm
by karinha
Simples,
Code: Select all | Expand
#include "FiveWin.ch"
function Main()
// TESTE
local oDlg, cPassw := Space( 05 ), oGet
local oBtn1, oBtn2
DEFINE DIALOG oDlg TITLE "BtnBmp Test" SIZE 400, 200
@ 1, 2 SAY "User:"
@ 1, 5 GET oGet VAR cPassw PASSWORD ;
ON CHANGE( LIGA_DESLIGA_GET( oGet, cPassw, oBtn1 ) )
/*
oGet:bChange:={ || iif( !Empty(cPassw) , oBtn1:Enable(), ;
oBtn1:Disable() ), ;
oBtn1:Refresh(), .T. }
*/
@ 50, 40 BTNBMP oBtn1 PROMPT "Ok" SIZE 40, 15 NOBORDER ;
ACTION oDlg:End()
@ 50, 110 BTNBMP oBtn2 PROMPT "Cancel" SIZE 40, 15 NOBORDER ;
ACTION oDlg:End()
oBtn2:lCancel := .T.
ACTIVATE DIALOG oDlg CENTERED
return nil
FUNCTION LIGA_DESLIGA_GET( oGet, cPassw, oBtn1 )
IF GETASYNCKEY( VK_SPACE ) .OR. ;
GETASYNCKEY( VK_BACK )
cPassw := SPACE(05)
oGet:VARPUT( cPassw )
oGet:Refresh()
oBtn1:Enable()
oBtn1:Show()
oBtn1:Refresh()
ENDIF
IF .NOT. Empty( cPassw )
oBtn1:Disable()
oBtn1:Hide()
oBtn1:Refresh()
ELSE
oBtn1:Enable()
oBtn1:Show()
oBtn1:Refresh()
ENDIF
RETURN( .T. )
Saludos.
Re: ¿bChange con BTNBMP no funciona?
Posted: Wed Oct 24, 2018 11:01 pm
by JoseAlvarez
No funciona amigo Karinha.
El boton se activa cuando el get tiene algun valor.
Pero cuando se borra su contenido, no se desactiva.
Queda activado.
Sigo buscando...
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 12:39 pm
by karinha
No és posible. Acá funciona perfecto. Cual tu versión del fivewin, xHarbour y BCC?
Hice testes con el FWH1701 e funciona bién.
Saludos.
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 12:44 pm
by karinha
Mira el ejemplo funcionado con FWH1701

Saludos.
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 2:28 pm
by JoseAlvarez
Hola Karinha.
Sí, es correcto y es lo mismo que te explicaba en el mensaje anterior.
Cuando escribes el boton se activa, pero al borrar, que debería desactivarse, no lo hace.
Sigo buscando la solución, al encontrarla te comento por acá.
Gracias nuevamente por tu ayuda amigo !
tengo fw 17.01+xHarb+Bcc5
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 2:51 pm
by karinha
tengo fw 17.01+xHarb+Bcc5?? No puede ser BCC5.5.1
Use el BCC7.2 ó superior. y el xHarbour para BCC7.2, ahi debe funcionar.
Code: Select all | Expand
11/06/2014 15:05 <DIR> BCC55
11/06/2014 15:07 <DIR> BCC582
27/03/2017 10:15 <DIR> BCC7
30/01/2017 09:16 <DIR> BCC72
12/07/2017 09:56 <DIR> BCC73
04/05/2018 16:47 <DIR> XHBBCC72
Saludos.
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 3:18 pm
by JoseAlvarez
Ok, gracias !
¿ tienes el link de descarga del BCC7+ ?
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 3:34 pm
by karinha
JoseAlvarez wrote:Ok, gracias !
¿ tienes el link de descarga del BCC7+ ?
Cual tú correo ó skype? Puedo enviarte sin problemas.
Saludos.
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 3:36 pm
by JoseAlvarez
Listo amigo Karinha.
Lo resolví buscando entre los post de aquÍ mismo del foro.
Puse este código en la cláusula
on change del REDEFINE GET....
Code: Select all | Expand
on change (cNickEmpresa:=oGetNickEmpresa:GetText(), oBtnVerificar:ForWhen())
y este código en la cláusula
when del REDEFINE BTNBMP
Y funciona exactamente como lo quería. Al poner aunque sea una letra en el GET el botón se activa. Al borrar todo el contenido del campo, por el medio que sea, BackSpace, DEL, seleccionado con el mouse etc.. por cualquier medio que elimine, el botón se desactiva...
De todas maneras por favor pasame el link de descarga del BCC7.X
Por cierto, vi que un colega del foro solicitaba ayuda para compilar y le respondiste esto:
Re: Favor Ayuda para Compilar
Nuevo mensajepor karinha » Lun Sep 10, 2018 11:43 am
Simples, mira CX.BAT y CX.LNK usa xHarbour y FiveWin 17.01
https://www.4shared.com/rar/qkugwvZZce/BANCOS.html
Saludos.Intenté descargar pero el link ya no es valido. ¿Podrias montalo de nuevo por favor? tengo el BCC7.0 pero aun no logro compilar con el FW17.01 por eso todavía compilo con el BCC5
Una vez más, quedo agradecido con tu ayuda y con la de todos los participantes del foro.
Un abrazo.
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 3:37 pm
by JoseAlvarez
Mi correo
jalvarez@softwarebinario.com mi Skype:
Software.Binario
Re: ¿bChange con BTNBMP no funciona?
Posted: Thu Oct 25, 2018 3:57 pm
by JoseAlvarez
Disculpa amigo Karinha..
puedes enviarme tambien
xHarbour para BCC7.2
Tampoco lo tengo...