Code: Select all
#include <hmg.ch>
#define WM_USER 0x0400
#define TTM_SETTITLEA (WM_USER + 32)
#define TTM_SETTITLEW (WM_USER + 33)
#define TTI_NONE 0
#define TTI_INFO 1
#define TTI_WARNING 2
#define TTI_ERROR 3
// Large icons only on Vista or higher
#define TTI_INFO_LARGE 4
#define TTI_WARNING_LARGE 5
#define TTI_ERROR_LARGE 6
Function Main()
SET TOOLTIPSTYLE BALLOON
// SET TOOLTIPSTYLE STANDARD
DEFINE WINDOW Form_1 AT 219 , 253 WIDTH 478 HEIGHT 186 ;
TITLE "ToolTip with Title and Icone" Main
DEFINE BUTTON Button_1
ROW 40
COL 20
WIDTH 100
HEIGHT 28
ACTION Nil
CAPTION "Print option"
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP "Click here to start printing"
END BUTTON
DEFINE BUTTON Button_2
ROW 80
COL 20
WIDTH 100
HEIGHT 28
ACTION Nil
CAPTION "Cancel option"
FONTNAME "Arial"
FONTSIZE 9
TOOLTIP "Click here to cancel"
END BUTTON
END WINDOW
CENTER WINDOW Form_1
ToolTipChng("Form_1", "Preview of report", TTI_INFO)
ACTIVATE WINDOW Form_1
Return Nil
Function ToolTipChng(cForm, cTitle, nIconIndex)
hb_Default(@cTitle,"")
SendMessageString(GetFormToolTipHandle(cForm),TTM_SETTITLEW, nIconIndex, cTitle)
Return Nil
#pragma BEGINDUMP
#define COMPILE_HMG_UNICODE
#include <HMG_UNICODE.h>
#include <windows.h>
#include "hbapi.h"
HB_FUNC( SENDMESSAGESTRING )
{
#ifdef UNICODE
LPWSTR lpWCStr = HMG_parc(4) ;
#else
LPWSTR lpWCStr = (LPCWSTR) ( hb_parc(4) == NULL ) ? NULL : hb_mbtowc( (const char *) hb_parc(4) ) ;
#endif
hb_retnl( ( LONG ) SendMessage( ( HWND ) hb_parnl( 1 ), ( UINT ) hb_parni( 2 ), ( WPARAM ) hb_parnl( 3 ), ( LPARAM ) ( LPCWSTR ) lpWCStr ) );
}
#pragma ENDDUMP
You can also change TOOLTIPSTYLE BALLOON with STANDARD and icon style by choosing TTI_NONE, TTI_INFO, TTI_WARNING, TTI_ERROR, TTI_INFO_LARGE, TTI_WARNING_LARGE and TTI_ERROR_LARGE
I hope you enjoy it