Click here to Skip to main content
14,550,869 members

Display ToolTip in any place on the screen

Rate this:
4.51 (32 votes)
Please Sign up or sign in to vote.
4.51 (32 votes)
1 Sep 2002
This article shows how to display tooltips at any location on the screen

Sample ToolTip

Introduction

This article shows how to display tooltips at any location on the screen.

To create a tooltip it is necessary to create a window of class TOOLTIPS_CLASS, then to fill a TOOLINFO structure:

typedef struct tagTOOLINFO{
	UINT      cbSize; 
	UINT      uFlags; 
	HWND      hwnd; 
	UINT_PTR  uId; 
	RECT      rect; 
	HINSTANCE hinst; 
	LPTSTR    lpszText; 
    #if (_WIN32_IE >= 0x0300)
	LPARAM lParam;
    #endif
} TOOLINFO, NEAR *PTOOLINFO, FAR *LPTOOLINFO;

We determine two parameters in this structure which are interesting to us:

uFlags
and lpszText.

uFlags it is chosen equal TTF_TRACK, that gives us an opportunity of use message sending to choosing a position for ToolTip and control visibility.

lpszText - the task of the text which we want display.

Now we send the message in system, about desire to create the emerging help where we transfer the reference to our structure TOOLINFO

SendMessage (hwndTT, TTM_ADDTOOL, 0, (LPARAM) (LPTOOLINFO) *ti);

Then we send a TTM_TRACKPOSITION message  which sets the coordinates of ToolTip

SendMessage (hwndTT, TTM_TRACKPOSITION, 0, (LPARAM) (DWORD) MAKELONG (m_x, m_y));
where m_x and m_y coordinates x and y on the screen.

And finally we send the message to activate the ToolTip

SendMessage (hwndTT, TTM_TRACKACTIVATE, true, (LPARAM) (LPTOOLINFO) *ti);
where the true value indicates we will display the ToolTip. If we specified false, the ToolTip will be hidden.

History

1 Sep 2002 - updated source code

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Zarembo Maxim
Software Developer
Belarus Belarus
I work as the programmer. I live in Belarus in Minsk. At me higher education. I have experience development programs at use TCP/IP, Win32, MFC, HTTP, SNMP, HASP4, eToken, OpenGl, Hooks. Recently I use packages of development Visual Studio 6.0 and .Net.

Comments and Discussions

 
GeneralThank you very much Pin
roxxxxssss21-Jul-16 16:41
Memberroxxxxssss21-Jul-16 16:41 
QuestionLearn english ! Pin
Elmue13-Nov-15 18:20
MemberElmue13-Nov-15 18:20 
AnswerRe: Learn english ! Pin
wilkoVerweij1-Jan-16 9:51
MemberwilkoVerweij1-Jan-16 9:51 
QuestionAttaching tool tip to a control Pin
masteryoda216-May-15 7:23
Membermasteryoda216-May-15 7:23 
QuestionTooltip does not displays when I compile source code and run the program Pin
AlwaysLearningNewStuff30-Jan-14 8:03
MemberAlwaysLearningNewStuff30-Jan-14 8:03 
AnswerRe: Tooltip does not displays when I compile source code and run the program Pin
Zarembo Maxim24-Jul-14 7:41
MemberZarembo Maxim24-Jul-14 7:41 
AnswerRe: Tooltip does not displays when I compile source code and run the program Pin
Member 37225838-Feb-15 18:50
MemberMember 37225838-Feb-15 18:50 
AnswerFix for newer Visual Studio versions Pin
Elmue13-Nov-15 18:30
MemberElmue13-Nov-15 18:30 
GeneralGreat Job - clean concise source Pin
Member 44391222-Nov-09 4:59
MemberMember 44391222-Nov-09 4:59 
GeneralEverything U need & Nothing U Don't Pin
pg--az24-Apr-09 19:23
Memberpg--az24-Apr-09 19:23 
GeneralTo create Tooltip for picture control in MSVS 2008(VC++) Pin
shruthikl26-Aug-08 1:03
Membershruthikl26-Aug-08 1:03 
GeneralGDI OBJECT LEAK Pin
carloscorpia9-Mar-06 23:17
Membercarloscorpia9-Mar-06 23:17 
GeneralDe source does not work... the sample exe does. Pin
PeterHarrie11-May-05 2:09
MemberPeterHarrie11-May-05 2:09 
GeneralRe: De source does not work... the sample exe does. Pin
Zarembo Maxim11-May-05 17:40
MemberZarembo Maxim11-May-05 17:40 
GeneralRe: De source does not work... the sample exe does. [modified] Pin
GMBarak16-Jan-07 20:10
MemberGMBarak16-Jan-07 20:10 
GeneralRe: De source does not work. vs manifest Pin
pg--az24-Apr-09 19:19
Memberpg--az24-Apr-09 19:19 
GeneralMAHAssistance: a Nifty program that used this article (Thanks to Author) Pin
Behzad Ebrahimi7-Nov-04 22:48
MemberBehzad Ebrahimi7-Nov-04 22:48 
GeneralRe: MAHAssistance: a Nifty program that used this article (Thanks to Author) Pin
Zarembo Maxim8-Nov-04 9:31
MemberZarembo Maxim8-Nov-04 9:31 
GeneralThanks very much! Pin
Chris Hills7-Jul-04 5:04
MemberChris Hills7-Jul-04 5:04 
GeneralRe: Thanks very much! Pin
Zarembo Maxim29-Jul-04 1:21
MemberZarembo Maxim29-Jul-04 1:21 
GeneralWrapping the text Pin
Balkrishna Talele22-Apr-04 0:49
MemberBalkrishna Talele22-Apr-04 0:49 
GeneralRe: Wrapping the text Pin
Zarembo Maxim22-Apr-04 2:56
MemberZarembo Maxim22-Apr-04 2:56 
GeneralUnregistering Tooltips rect Pin
Majid Shahabfar16-Dec-02 1:28
MemberMajid Shahabfar16-Dec-02 1:28 
GeneralExcellent article Pin
dabs3-Sep-02 0:36
Memberdabs3-Sep-02 0:36 
GeneralAdding tooltip to picture control Pin
Anonymous2-Sep-02 0:38
MemberAnonymous2-Sep-02 0:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Article
Posted 10 Jun 2002

Stats

183K views
6.9K downloads
55 bookmarked