Quitar o mostrar button action de un get

Quitar o mostrar button action de un get

Postby leandro » Tue Oct 01, 2024 10:05 pm

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?

Image

Espero haberme hecho entender de antemano gracias.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby JoseAlvarez » Wed Oct 02, 2024 2:02 pm

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.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 805
Joined: Sun Nov 09, 2014 5:01 pm

Re: Quitar o mostrar button action de un get

Postby karinha » Wed Oct 02, 2024 3:27 pm

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

Re: Quitar o mostrar button action de un get

Postby leandro » Wed Oct 02, 2024 8:09 pm

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.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby karinha » Wed Oct 02, 2024 9:29 pm

Estimado Leandro, asi es Simples. Mira se sirve:

Code: Select all  Expand view  RUN

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

Re: Quitar o mostrar button action de un get

Postby cmsoft » Wed Oct 02, 2024 10:28 pm

Puedes hacerlo asi
oGet:oBtn:Show() o oGet:oBtn:Hide()
Code: Select all  Expand view  RUN
#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
User avatar
cmsoft
 
Posts: 1293
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Quitar o mostrar button action de un get

Postby leandro » Wed Oct 02, 2024 10:33 pm

Excelente Cesar muchas gracias como siempre por la ayuda. Es exactamente lo que queríamos hacer. :D :D :D :D
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby karinha » Thu Oct 03, 2024 11:17 am

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

tooltip en el button action de un get

Postby leandro » Fri Dec 20, 2024 8:00 pm

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

#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

 


Image
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby Antonio Linares » Fri Dec 20, 2024 8:53 pm

oGet:oBtn:cTooltip := "Texto del tooltip"
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Quitar o mostrar button action de un get

Postby leandro » Sat Dec 21, 2024 4:01 pm

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

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 )
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby leandro » Sat Dec 21, 2024 4:03 pm

Ya descubrimos como hacerlo, toca asignarle el tooltip, luego de iniciar el dialogo.

Así, funcionó
Code: Select all  Expand view  RUN

#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
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Quitar o mostrar button action de un get

Postby Antonio Linares » Sun Dec 22, 2024 7:29 am

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. )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 54 guests