¿Se puede poner ctooltip en items de un combobox?

¿Se puede poner ctooltip en items de un combobox?

Postby Ramón J. » Mon Nov 15, 2021 7:49 pm

Hola a todo

Estoy buscando en samples y en el foro algún tema relativo a poner ctooltip en los items de un combobox, pero no he visto nada. ¿Se puede poner?

Gracias
FWH 20.12 BCC7
Ramón J.
 
Posts: 152
Joined: Mon Feb 13, 2006 8:23 pm


Re: ¿Se puede poner ctooltip en items de un combobox?

Postby Ramón J. » Thu Nov 18, 2021 8:01 pm

Gracias, João, por tu interés, como siempre dispuesto a ayudar.

He estado viendo los links pero en ninguno de ellos he visto lo que yo quiero, que salga el tooltip cuando se ponga el puntero en el combo desplegado.

Mira, esto es lo que sale:

Image

Esto es lo que yo quiero (es un montaje) cuando se ponga el puntero en la opción y dé la información completa:

Image

El ctooltip sí que sale, pero cuando se ha seleccionado la opción y se ha cerrado el combo.

[url]function Main()

SET _3DLOOK ON
local oDlg, oCbx
local cItem := ""

DEFINE DIALOG oDlg FROM 5, 5 TO 15, 40 TITLE "A Dialog Box with combo"
@ 1, 1 COMBOBOX oCbx VAR cItem ITEMS { "Option 1 of combobox", "Option 2 of combobox", "Option 3 of combobox" } ;
OF oDlg ;
ON CHANGE ( ;
IIF( oCbx:nAt = 1, oCbx:cTooltip := { "Option 1 of combobox","Information", 1, CLR_WHITE, CLR_RED }, NIL ), ;
IIF( oCbx:nAt = 2, oCbx:cTooltip := { "Option 2 of combobox","Information", 1, CLR_WHITE, CLR_RED }, NIL ), ;
IIF( oCbx:nAt = 3, oCbx:cTooltip := { "Option 3 of combobox","Information", 1, CLR_WHITE, CLR_RED }, NIL ) )

@ 3, 4 BUTTON "&Ok" OF oDlg SIZE 40, 12

@ 3, 12 BUTTON "&Cancel" OF oDlg SIZE 40, 12 ;
ACTION oDlg:End()

ACTIVATE DIALOG oDlg

return nil[/url]
FWH 20.12 BCC7
Ramón J.
 
Posts: 152
Joined: Mon Feb 13, 2006 8:23 pm

Re: ¿Se puede poner ctooltip en items de un combobox?

Postby cnavarro » Thu Nov 18, 2021 10:08 pm

Se me ocurre que llames a los metodos ( DestroyToolTip() y ShowToolTip( nRow, nCol, cToolTip ) ) en el evento ON CHANGE del combo, a ver como se comporta
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6504
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: ¿Se puede poner ctooltip en items de un combobox?

Postby karinha » Thu Nov 18, 2021 11:52 pm

Que tal Ramón? Mucho mejor que un simples tooltip.

https://imgur.com/bul3mxT

Image

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

Re: ¿Se puede poner ctooltip en items de un combobox?

Postby karinha » Fri Nov 19, 2021 12:53 am

Pronto Ramón:

Code: Select all  Expand view

// \SAMPLES\RAMONCMB.PRG - 18/11/2021 - kapiabafwh@gmail.com - Yes sir.

#Include "FiveWin.ch"

#Define CLR_PINK       nRGB( 255, 128, 128 )
#Define CLR_NBLUE      nRGB( 128, 128, 192 )
#define CLR_MSPURPLE   nRGB( 0,   120, 215 )
#define CLR_MSRED      nRGB( 232,  17,  35 )
#define CLR_MSGRAY     nRGB( 229, 229, 229 )

FUNCTION Main()

   LOCAL oDlg, oCbx, cTitle, oSayItem, oFnt, oFont, oSayFive, cTextFive
   LOCAL cText := SPACE(200), oTextBras, cTextBras, aGrad, oOk, oExit

   cTitle    := "Ramon: DropDown ComboBox"
   cTextFive := "Ramon: DropDown ComboBox - FiveWin"
   cTextBras := "FiveWin Brasil The Best .and. Ramon"

   SET _3DLOOK ON

   SetBalloon( .T. ) // Balloon shape required for tooltips

   SkinButtons()

   aGrad := { { 1, CLR_WHITE, CLR_HCYAN  } }

   DEFINE FONT oFont  NAME "Ms Sans Serif"  SIZE 00, -28 BOLD
   DEFINE FONT oFnt   NAME "Ms Sans Serif"  SIZE 00, -16 BOLD

   DEFINE DIALOG oDlg TITLE cTitle FROM 110, 1 TO 450, 600 PIXEL        ;
      GRADIENT aGrad

   oDlg:lHelpIcon := .F.

   @ 10, 10 COMBOBOX oCbx VAR cText STYLE CBS_DROPDOWN                  ;
      SIZE 100, 460 OF oDlg PIXEL HEIGHTGET 20 FONT oFnt                ;
      ITEMS { "Ramon Forum ESP", "FiveWin Brasil", "FiveWin Mundial",   ;
              "Corinthians SP ", "Palmeiras SP  ", "Flamengo Rio   ",   ;
              "Marrocos Afrik ", "Brasil Mi Amor", "Estados Unidos ",   ;
              "Canadian Air   ", "Espanha Bella ", "Argentina Enemy"  } ;
      ON CHANGE( oDlg:SetText( cTitle + " - " + cText ),                ;
                 oSayItem:SetText( cText ) )

   oCbx:cToolTip := { || MyToolTip_Cbx( oCbx:nAt, cText ) }

   @ 10, 120 SAY oSayItem VAR cText      SIZE 150, 20 OF oDlg PIXEL FONT oFont ;
      COLORS CLR_PINK, CLR_WHITE TRANSPARENT

   @ 40, 120 SAY oSayFive VAR cTextFive  SIZE 150, 50 OF oDlg PIXEL FONT oFont ;
      COLORS CLR_MSPURPLE, CLR_WHITE TRANSPARENT

   @ 80, 120 SAY oTextBras VAR cTextBras SIZE 150, 50 OF oDlg PIXEL FONT oFont ;
      COLORS CLR_MSRED, CLR_WHITE TRANSPARENT

   @ 145, 100 BUTTON oOk PROMPT "&Ok" SIZE 50, 14 OF oDlg PIXEL ;
      ACTION( oDlg:End() )

   @ 145, 160 BUTTON oExit PROMPT "&Salida" SIZE 50, 14 OF oDlg PIXEL ;
      ACTION( oDlg:End() ) DEFAULT CANCEL

   SET FONT OF oOk   TO oFnt
   SET FONT OF oExit TO oFnt

   ACTIVATE DIALOG oDlg CENTERED

   oFnt:End()
   oFont:End()

RETURN NIL

FUNCTION MyToolTip_Cbx( nOpt, cText )

   LOCAL cRet

   FWLOG nOpt

   IF .NOT. EMPTY( cText ) // vacio no. YES, SIR!!

      Do Case
      Case nOpt = 1
         MsgWait( cText, "Message1",  2 )
      Case nOpt = 2
         MsgWait( cText, "Message2",  2 )
      Case nOpt = 3
         MsgWait( cText, "Message3",  2 )
      Case nOpt = 4
         MsgWait( cText, "Message4",  2 )
      Case nOpt = 5
         MsgWait( cText, "Message5",  2 )
      Case nOpt = 6
         MsgWait( cText, "Message6",  2 )
      Case nOpt = 7
         MsgWait( cText, "Message7",  2 )
      Case nOpt = 8
         MsgWait( cText, "Message8",  2 )
      Case nOpt = 9
         MsgWait( cText, "Message9",  2 )
      Case nOpt = 10
         MsgWait( cText, "Message10", 2 )
      Case nOpt = 11
         MsgWait( cText, "Message11", 2 )
      Case nOpt = 12
         MsgWait( cText, "Message12", 2 )
      EndCase

   ENDIF

RETURN( cRet )

// FIN / END
 


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

Re: ¿Se puede poner ctooltip en items de un combobox?

Postby Ramón J. » Mon Nov 22, 2021 7:03 pm

Gracias, João.

Y algo así se podría hacer?

Image

Saludos y gracias.
FWH 20.12 BCC7
Ramón J.
 
Posts: 152
Joined: Mon Feb 13, 2006 8:23 pm

Re: ¿Se puede poner ctooltip en items de un combobox?

Postby karinha » Mon Nov 22, 2021 10:29 pm

Hello, no que yo sepa. Porquê no usas una Listbox? Haria el mismo.

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


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 148 guests