CHwmDataTip - tool and data tips for CFormView and CDialog classes

Download the source

I wanted to display "tool tips" for non-control items, such as edit boxes, static text displays, etc. Unfortunately the VC/MFC CToolTipCtrl class didn't do what I wanted, although it came part of the way. I searched around on the Web, and when I installed VC6 I finally found most of the solution.

Microsoft Systems Journal, April 1998 issue., had an article entitled "Tiptoe Through the ToolTips With Our All-Encompassing ToolTip Programmer's Guide" by Roger Jack. This article contained most of the information I needed. I did some experimenting and then created a wrapper class to ease future implementation

If you only need tool tips - for control objects such as buttons or toolbars - then you can probably use the Microsoft CToolTipCtrl directly and won't need this wrapper.

There are three classes. All three classes are implemented in the CHwmDataTip.cpp and CHwmDataTip.h source files.

CHwmDataTip - is descended from CToolTipCtrl. Although it uses CToolTipCtrl for most of its processing, it also uses the CWnd functions to enable tool tips. With this combination of techniques you can easily implement tool or data tips for non-frame windows, such as CFormView or CDialog. The class is specific for each parent window; you would have different instances (usually embedded as a member variable) for each window where you want to have tips.

CHwmDataTipInfo - contains information about each tip area in the parent. CHwmDataTip contains a list of CHwmDataTipInfo elements. The actual data or tool tip text and active areas are controlled by this structure.

CHwmDataTipCollection - is an optional class that is meant to be "global". By connecting CHwmDataTip to CHwmDataTipCollection you can "globally control" each seperate view's tips from a single object.

The source code is liberally commented. CHwmDataTip.cpp contains directions and source snips for cookbook implementation.

Last updated: October 17, 1998


  • Problem with link

    Posted by on 12/13/2005 10:46pm

    Unable to activate download 'source' - link does not seem to be working at all

  • Tool Tips

    Posted by Legacy on 11/28/2003 12:00am

    Originally posted by: Mike Burgermeister

    Does any know where I could find a complete list of "Tool Tips" in VB 6?


  • ToolTips and Tab Order; HTML Help

    Posted by Legacy on 12/30/1998 12:00am

    Originally posted by: Frank LaPiana

    I've discovered an interesting bug.

    If the tab order for parent window isn't "sequential", then tool/data tips do not always display, even though the tip area is defined. For instance, if you have a tab order of 1 10 12 2 3 7 8, then the tips may not appear for the areas 2 3 7 8. If you re-order the tab sequence to 1 2 3... then the tips work correctly.

    The bug appears to be in the base tool tip control.

    I've also extended CHwmDataTip to automatically handle "HTML Help". This provides a single location for both types of help - tips and full text.

  • Wrong MSJ Issue (4/1997, not 4/1998)

    Posted by Legacy on 12/28/1998 12:00am

    Originally posted by: Uwe Keim

    the article "Tiptoe Through the ToolTips With Our All-Encompassing ToolTip Programmer's Guide" was in the April issue 1997, not 1998!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Moving from an on-premises environment to Office 365 does not remove the need to plan for disruptions or reduce the business risk requirements for protecting email services. If anything, some risks increase with a move to the cloud. Read how to ease the transition every business faces if considering or already migrating to cloud email. This white paper discusses: Setting expectations when migrating to Office 365 Understanding the implications of relying solely on Exchange Online security Necessary archiving …

  • U.S. companies are desperately trying to recruit and hire skilled software engineers and developers, but there's simply not enough quality talent to go around. In response, companies often resort to inferior solutions -- hiring substandard developers and engineers, recruiting talent on a part-time or temporary basis, poaching people from competitors, or burdening an already stressed IT staff for more of their labor. Fortunately, there's a better solution. Read this white paper to learn the business value of …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date