Page 1 of 1

Como ocultar un get o un button..

Posted: Thu Jan 18, 2007 5:20 pm
by Elias Torres
Hola a todos...

Alguien puede decirme como puedo ocultar, es decir, que no sea visible en un dialogo un get y un button??. He probado oget:hide() y oboton:hide() pero me da error y supongo que sea porque no soporta hide(). Existe alguna forma de no mostrar esto?

Saludos.

Elías Torres.

Posted: Thu Jan 18, 2007 5:53 pm
by Biel EA6DD
Hola Elias,
con los gets no lo he probado, pero con BTNBMP si que funciona el metodo Hide().

Posted: Thu Jan 18, 2007 5:58 pm
by Antonio Linares
Elías,

Que error te da ? Esos métodos están disponibles para todas las ventanas, diálogos y controles

Posted: Thu Jan 18, 2007 6:16 pm
by Elias Torres
El error que me da es el siguiente:

No exported method
HIDE
Args:
[ 1] = U

stack calls:
HIDE(0)
INVENTARIO(631)
(b)LISTADOS_INVENTARIOS(927)
TBITMAP:LBUTTONDOWN(0)
TWINDOW:HANDLEEVENT(0)
TCONTROL:HANDLEEVENT(0)
TBITMAP:HANDLEEVENT(0)
_FWPPC(0)
DIALOGBOX(0)
TDIALOG:ACTIVATE(0)
LISTADOS_INVENTARIOS(929)
(b)MAIN(90)
TBITMAP:LBUTTONDOWN(0)
TWINDOW:HANDLEEVENT(0)
TCONTROL:HANDLEEVENT(0)
TBITMAP:HANDLEEVENT(0)
_FWPPC(0)
DIALOGBOX(0)
TDIALOG:ACTIVATE(0)
MAIN(102)



El codigo en el que está es este:

local oExisRemo,oExisLocal,oboton

DEFINE dialog odlg resource "inventariado"

IF control_existencias='2'
redefine get oExisRemo var inventario->exis_remo id 126 of odlg
redefine get oExisLocal var inventario->exis_loc id 128 of odlg
ELSE
IF control_existencias='1'
redefine get oExisLocal var inventario->exis_loc id 128 of odlg
ENDIF
ENDIF

IF control_existencias='1' .or. control_existencias='2'
redefine button oboton id 4001 of odlg action calcula_existencias(articulo,oExisRemo,oExisLocal,quien)
ELSE
oboton:hide()
oExisRemo:hide()
oExisLocal:hide()
endif

ACTIVATE dialog odlg


Saludos.

Elías Torres

Posted: Thu Jan 18, 2007 9:07 pm
by Antonio Linares
Elías,

No le puedes enviar ese mensaje a un control hasta que el diálogo no se ha activado porque los controles aún no tienen un handle valido. Tienes que hacerlo así:

IF control_existencias='1' .or. control_existencias='2'
redefine button oboton id 4001 of odlg action calcula_existencias(articulo,oExisRemo,oExisLocal,quien)
endif

ACTIVATE dialog odlg ;
ON INIT If( control_existencias=='1' .or. control_existencias=='2',( oboton:hide(), oExisRemo:hide(), oExisLocal:hide() ),)