Page 1 of 1
Quitar o mostrar button action de un get
Posted: Tue Oct 01, 2024 10:05 pm
by leandro
Hola buenas tardes para todos, tengo una pregunta, quiero poder quitar o mostrar en tiempo de ejecución, ese button que aparece al lado del GET, nosotros lo usamos para abrir un dialogo de búsquedas.
Que propiedad me permite quitarlo o ponerlo?
Espero haberme hecho entender de antemano gracias.
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 2:02 pm
by JoseAlvarez
Hola leandro,
Mientras contestan los gurus, se me ocurre que puedes usar dos controles get. Uno con el action y otro sin. Muestras uno y ocultas el otro segun la necesidad.
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 3:27 pm
by karinha
Leandro, no entiendo por qué quieres ocultar el botón GET. ¿Por qué no usa un botón EN EL LADO de GET y lo habilita/deshabilita según sea necesario o usa Hide()/Show() según sea necesario?
Regards, saludos.
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 8:09 pm
by leandro
Gracias Jose y karinha por las sugerencias... así lo tenemos, pero esa es la solución con "efectos especiales" jejejejeje, nos gustaría, si se puede, poder ocular o mostrar ese botón a conveniencia.
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 9:29 pm
by karinha
Estimado Leandro, asi es Simples. Mira se sirve:
Code: Select all | Expand
// C:\FWH\SAMPLES\LEANDGET.PRG - By Kapiaba.
#Include "FiveWin.ch"
FUNCTION Main()
LOCAL oDlg, oBtn, oBtn2, oFont, oBold, oSay
LOCAL oGet1, oGet2, oGet3, oGet4, oGet5
LOCAL cVar1, cVar2, cVar3, cVar4
cVar1 := 0
cVar2 := 0
cVar3 := 50000.00
cVar4 := 0
SkinButtons()
DEFINE FONT oFont NAME 'Tahoma' SIZE 0, -16 BOLD
DEFINE FONT oBold NAME 'Tahoma' SIZE 0, -14 BOLD
DEFINE DIALOG oDlg TITLE "Quitar o mostrar button action de un get" PIXEL ;
SIZE 320, 300 TRANSPARENT COLOR METRO_EMERALD, CLR_WHITE FONT oBold
oDlg:lHelpIcon := .F.
@ 56,10 SAY oSay PROMPT "José Alvares, ¡seguro que lo haces mejor!" ;
FONT oBold SIZE 155, 20 PIXEL OF oDlg TRANSPARENT UPDATE ;
COLORS METRO_ORANGE, CLR_WHITE
@ 10, 10 GET oGet1 VAR cVar1 bitmap "..\bitmaps\on.bmp" ;
ACTION( msginfo( "With Transparent" ) ) OF oDlg PIXEL SIZE 60, 12
oGet1:lBtnTransparent := .T. // transparent button get oGet1
@ 40, 10 GET oGet2 VAR cVar2 bitmap "..\bitmaps\on.bmp" ;
ACTION( msginfo( "Without Transparent" ) ) of oDlg PIXEL SIZE 60, 12
// CON IMAGEN AL INICIO - SHOW() AL INICIO.
@ 70, 10 GET oGet3 VAR cVar3 bitmap "..\bitmaps\chkyes.bmp" OF oDlg ;
PIXEL SIZE 120, 12 ACTION( msginfo( "With Adjust-Transparent" ) )
oGet3:lAdjustBtn := .T.
oGet3:nClrTextDis := CLR_WHITE // Color text disable status
oGet3:nClrPaneDis := CLR_BLUE // Color Pane disable status
// SIN IMAGEN - HIDE() AL INICIO.
@ 70, 10 GET oGet4 VAR cVar3 OF oDlg PIXEL SIZE 120, 12
oGet4:lDisColors := .F. // Deactive disable color
oGet4:nClrTextDis := CLR_WHITE // Color text disable status
oGet4:nClrPaneDis := CLR_BLUE // Color Pane disable status
@ 100, 10 GET oGet5 VAR cVar4 bitmap "..\bitmaps\chkyes.bmp" OF oDlg ;
PIXEL SIZE 120, 12 ACTION( msginfo( "With Adjust-Transparent" ) )
oGet5:lAdjustBtn := .T.
oGet5:nClrTextDis := CLR_WHITE // Color text disable status
oGet5:nClrPaneDis := CLR_BLUE // Color Pane disable status
@ 130, 10 BTNBMP oBtn PROMPT "Con Image" CENTER SIZE 50, 14 PIXEL OF oDlg ;
NOROUND 2007 FONT oFont ;
ACTION( CON_IMAGE_IN_GET( oBtn, oGet3, oGet4, oDlg ) )
@ 130, 80 BTNBMP oBtn2 PROMPT "Sin Image" CENTER SIZE 50, 14 PIXEL OF oDlg ;
NOROUND 2007 FONT oFont ;
ACTION( SIN_IMAGE_IN_GET( oBtn2, oGet3, oGet4, oDlg ) )
ACTIVATE DIALOG oDlg CENTERED ON INIT( oGet4:Hide() )
oFont:End()
oBold:End()
RETURN NIL
FUNCTION CON_IMAGE_IN_GET( oBtn, oGet3, oGet4, oDlg )
oGet4:Hide()
oDlg:Update()
oGet3:Show()
oDlg:Update()
// oBtn:Disable()
// oBtn:Refresh()
RETURN( .T. )
FUNCTION SIN_IMAGE_IN_GET( oBtn2, oGet3, oGet4, oDlg )
oGet3:Hide()
oDlg:Update()
oGet4:Show()
oDlg:Update()
// oBtn2:Disable()
// oBtn2:Refresh()
RETURN( .T. )
// FIN / END - kapiabafwh@gmail.com
Regards, saludos.
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 10:28 pm
by cmsoft
Puedes hacerlo asi
oGet:oBtn:Show() o oGet:oBtn:Hide()
Code: Select all | Expand
#include "FiveWin.ch"
FUNCTION Main()
Local oDlg, oBot, oGet, nVar := 1
DEFINE DIALOG oDlg TITLE "Ocultar boton" FROM 05,15 TO 40,70
@ 05,05 GET oGet VAR nVar PICTURE "999999" right OF oDlg ACTION(MsgInfo("Accion"))
@ 20,05 BUTTON oBot PROMPT "Ocultar" SIZE 30,12 OF oDlg PIXEL ACTION oGet:oBtn:Hide()
@ 20,55 BUTTON oBot PROMPT "Mostrar" SIZE 30,12 OF oDlg PIXEL ACTION oGet:oBtn:Show()
ACTIVATE DIALOG oDlg CENTERED
RETURN nil
Re: Quitar o mostrar button action de un get
Posted: Wed Oct 02, 2024 10:33 pm
by leandro
Re: Quitar o mostrar button action de un get
Posted: Thu Oct 03, 2024 11:17 am
by karinha
tooltip en el button action de un get
Posted: Fri Dec 20, 2024 8:00 pm
by leandro
Hola buenas tardes para todos, es posible colocar un tooltip, en el button action del GET
Lo intentamos así, pero sale error
Code: Select all | Expand
#Include "FiveWin.Ch"
Function Main()
Local oDlg
Local oGet
local cVar := space( 10 )
DEFINE DIALOG oDlg from 0,0 to 400,400 pixel
@ 15,15 get oGet var cVar picture "@!" bitmap "..\bitmaps\chkyes.bmp" action( msginfo( "action" ) );
size 120,12 of oDlg pixel
oGet:lAdjustBtn := .t.
oGet:oBtn:cToolTip := "El mensaje"
ACTIVATE DIALOG oDlg
return nil
Re: Quitar o mostrar button action de un get
Posted: Fri Dec 20, 2024 8:53 pm
by Antonio Linares
oGet:oBtn:cTooltip := "Texto del tooltip"
Re: Quitar o mostrar button action de un get
Posted: Sat Dec 21, 2024 4:01 pm
by leandro
Antonio buenos días, gracias por responder
Ya lo había intentado así, pero no funciona, por eso publique el código, para mostrar como lo intentamos.
Code: Select all | Expand
Application
===========
Path and name: c:\fwh64_2409\samples\testget2.exe (64 bits)
Size: 5,666,304 bytes
Compiler version: xHarbour 1.3.1 Intl. (SimpLex) (Build 20240624)
FiveWin version: FWH 24.09
C compiler version: LLVM/Clang C 5.0.2 (64-bit)
Windows 8 64 Bits, version: 6.2, Build 9200
Time from start: 0 hours 0 mins 0 secs
Error occurred at: 12/21/24, 11:00:36
Error description: Error BASE/1005 Class: 'NIL' has no property: CTOOLTIP
Args:
[ 1] = U
[ 2] = C El mensaje
Stack Calls
===========
Called from: => _CTOOLTIP( 0 )
Called from: testget2.prg => MAIN( 15 )
Re: Quitar o mostrar button action de un get
Posted: Sat Dec 21, 2024 4:03 pm
by leandro
Ya descubrimos como hacerlo, toca asignarle el tooltip, luego de iniciar el dialogo.
Así, funcionó
Code: Select all | Expand
#Include "FiveWin.Ch"
Function Main()
Local oDlg
Local oGet
local cVar := space( 10 )
DEFINE DIALOG oDlg from 0,0 to 400,400 pixel
@ 15,15 get oGet var cVar picture "@!" bitmap "..\bitmaps\chkyes.bmp" action( msginfo( "action" ) );
size 120,12 of oDlg pixel
oGet:lAdjustBtn := .t.
ACTIVATE DIALOG oDlg ON INIT oGet:oBtn:cToolTip := "El mensaje"
return nil
Re: Quitar o mostrar button action de un get
Posted: Sun Dec 22, 2024 7:29 am
by Antonio Linares
Leandro,
Muy bien!
Importante: hay que devolver .T. desde la claúsula ON INIT para no variar la secuencia de foco:
ACTIVATE DIALOG oDlg ON INIT ( oGet:oBtn:cToolTip := "El mensaje", .T. )