Clipper On Line • Ver Tópico - Tooltip com Icone

Tooltip com Icone

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Tooltip com Icone

Mensagempor asimoes » 28 Ago 2014 21:36

Tooltip com Icone

Imagem

Código:


#define WM_USER                 0x0400
#define TTM_SETTITLE            (WM_USER + 32)
#define TTI_NONE                0
#define TTI_INFO                1
#define TTI_WARNING             2
#define TTI_ERROR               3

FUNCTION Teste
INIT DIALOG  oDlgReport TITLE "Teste" ;
           ICON    oIconPrint ;
           AT      0,0 SIZE 1024,768 ;
           CLIPPER ;
           FONT    oFont ;
           COLOR   nCorJanela ;
           STYLE DS_CENTER + WS_SYSMENU + WS_VISIBLE ;
           ON INIT {| oDlgReport | ToolTipTitulo(oDlgReport,"Preview do Relatório")}

    @ 006,020 BUTTONEX cmd1 ;
                CAPTION  "Teste" ;
                ON CLICK { || ZoomRep(oEdit,'-',oDlgReport)} ;
                SIZE     115, 40 ;
                ICON     oIconZoomOut:handle  ;
                TOOLTIP  'Teste com Tooltip com Icone'

oDlgReport:Activate(.F.)

RETURN Nil

FUNCTION ToolTipTitulo(oJanela, cTitulo)
   hb_Default(@cTitulo,"")
   SendMessageString(GetToolTipHandle(oJanela:handle),TTM_SETTITLE, TTI_INFO, cTitulo)
RETURN Nil

#pragma BEGINDUMP

#include <windows.h>

#include "hbapi.h"

HB_FUNC( SENDMESSAGESTRING )
{
   hb_retnl( ( LONG ) SendMessage( ( HWND ) hb_parnl( 1 ), ( UINT ) hb_parni( 2 ), ( WPARAM ) hb_parnl( 3 ), ( LPARAM ) ( LPSTR ) hb_parc( 4 ) ) );
}

#pragma ENDDUMP

â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Tooltip com Icone

Mensagempor asimoes » 29 Ago 2014 07:35

Outros defines com icone grande.

#define WM_USER 0x0400
#define TTM_SETTITLE (WM_USER + 32)
#define TTI_NONE 0
#define TTI_INFO 1
#define TTI_WARNING 2
#define TTI_ERROR 3
#define TTI_INFO_LARGE 4
#define TTI_WARNING_LARGE 5
#define TTI_ERROR_LARGE 6

Imagem

ON INIT {| oDlgReport | ToolTipTitulo(oDlgReport,"Preview do Relatório",TTI_INFO_LARGE)...

FUNCTION ToolTipTitulo(oJanela, cTitulo, nIconIndex)
   hb_Default(@cTitulo,"")
   hb_Default(@nIconIndex,TTI_INFO)
   SendMessageString(GetToolTipHandle(oJanela:handle),TTM_SETTITLE, nIconIndex, cTitulo)
RETURN Nil
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Tooltip com Icone

Mensagempor Pablo César » 29 Ago 2014 12:55

Obrigado Alexandre por compartilhar conosco !

Vou aproveitar e postar este recurso para HMG.

Muito legal, gostei !
Anexos
Screen_01.PNG
Screen_01.PNG (11.19 KiB) Visualizado 856 vezes
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Tooltip com Icone

Mensagempor asimoes » 29 Ago 2014 17:18

Colocar cores na janela do tooltip, só não funciona com o waindow.manifest incluído no arquivo de resource.

ex.:

Imagem


#define WM_USER                 0x0400
#define TTM_SETDELAYTIME        (WM_USER + 3)
#define TTM_SETTIPBKCOLOR       (WM_USER + 19)
#define TTM_SETTIPTEXTCOLOR     (WM_USER + 20)
#define TTM_SETMAXTIPWIDTH      (WM_USER + 24)
#define TTM_SETTITLE            (WM_USER + 32)
#define TTI_NONE                0
#define TTI_INFO                1
#define TTI_WARNING             2
#define TTI_ERROR               3
#define TTI_INFO_LARGE          4
#define TTI_WARNING_LARGE       5
#define TTI_ERROR_LARGE         6 

FUNCTION ToolTipTitulo(oJanela, cTitulo, nIconIndex)
   hb_Default(@cTitulo,"")
   hb_Default(@nIconIndex,TTI_INFO)
   
   SendMessageToolTip( GetToolTipHandle(oJanela:handle), TTM_SETTIPBKCOLOR, RGB(255,255,0), 0 ) //Só funciona sem o windows.manifest
   
   SendMessageString(GetToolTipHandle(oJanela:handle),TTM_SETTITLE, nIconIndex, cTitulo)
   
RETURN Nil
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Tooltip com Icone

Mensagempor Pablo César » 29 Ago 2014 17:41

Alexandre na sua linha 20, não deveria ser esta:

SendMessage( GetToolTipHandle(oJanela:handle), TTM_SETTIPBKCOLOR, RGB(255,255,0), 0 ) //Só funciona sem o windows.manifest

ao invés desta ?

SendMessageToolTip( GetToolTipHandle(oJanela:handle), TTM_SETTIPBKCOLOR, RGB(255,255,0), 0 ) //Só funciona sem o windows.manifest

No HMG existe o SET TOOLTIPBACKCOLOR <aColor>
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Tooltip com Icone

Mensagempor asimoes » 29 Ago 2014 20:31

Pablo,

A ordem não influi, agora a SenMessageToolTip só funcionará se a SendMensageString for chamada.
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Tooltip com Icone

Mensagempor Pablo César » 29 Ago 2014 23:00

Não entendi. A função SendMessageToolTip, não está presente. Mas tudo bem, funciona con SendMessage.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Tooltip com Icone

Mensagempor asimoes » 30 Ago 2014 06:20

Ops, foi uma falha minha:

A função SendMessageToolTip encapsula a sendmessage:

#pragma BEGINDUMP

#include <windows.h>

#include "hbapi.h"
HB_FUNC( SENDMESSAGESTRING )
{
   hb_retnl( ( LONG ) SendMessage( ( HWND ) hb_parnl( 1 ), ( UINT ) hb_parni( 2 ), ( WPARAM ) hb_parnl( 3 ), ( LPARAM ) ( LPSTR ) hb_parc( 4 ) ) );
}

HB_FUNC( SENDMESSAGETOOLTIP )
{
   hb_retnl( ( LONG ) SendMessage( ( HWND ) hb_parnl( 1 ), ( UINT ) hb_parni( 2 ), ( WPARAM ) hb_parnl( 3 ), ( LPARAM ) hb_parnl( 4 ) ) );
}

#pragma ENDDUMP

â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes




Retornar para HwGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 4 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro