Click here to Skip to main content
15,884,298 members
Articles / Desktop Programming / MFC
Article

List Box with ToolTips

Rate me:
Please Sign up or sign in to vote.
3.56/5 (5 votes)
20 Feb 2001 128.2K   2.9K   36   11
A listbox that displays tooltips for items
  • Download source files - 5 Kb
  • Download demo project - 14 Kb
  • Sample Image - TTListBoxDemo.gif

    Introduction

    This tooltip enabled class lets the user display tooltip text for individual items. This class uses the tooltip class that is written by Dhandapani Ammasai.

    A multiline tooltip for an individual item is automatically displayed towards the right of the control and the text is updated as the mouse is moved over the individual items in the list box.

    Follow these steps to add a CTTListBox to a dialog:

    • Add TTListBox.cpp and TTListBox.h to your project.
    • Add tooltip2.cpp and tooltip2.h to your project.
    • Add include "TTListBox.h" to the header file of your dialog class.
    • Add a list box control to your dialog.
    • Use ClassWizard to add a member variable of type CTTListBox for the list box you just added. If CTTListBox is not in the Variable Type list, choose CListBox, and manually change the type to CTTListBox later.
    • In your dialog class, define a static member function which retrieves the the text for individual items. This function must be declared as:
      static CString TextRetriever(int nIndex);

      where nIndex is the index of the list box item that currently is under the mouse cursor and wants to have the text retrieved.

    • Implement the text retriever function the way you want it.
    • In your dialog's class OnInitDialog function include a statment like:
      m_listbox.SetTextRetrieverFcn(TextRetriever);
      

      where TextRetriever is the name of your text retriever function that you declared earlier.

    I have also implemented the same functionality for a tree control. You can e-mail me if you wish to look at how I implemented it for a tree control.

    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


    Written By
    United States United States
    This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

    Comments and Discussions

     
    Generalcan't use ItemData in function TextRetriever Pin
    yy12342-Jul-08 22:13
    yy12342-Jul-08 22:13 
    GeneralRe: can't use ItemData in function TextRetriever Pin
    yy12342-Jul-08 23:30
    yy12342-Jul-08 23:30 
    QuestionNice class - Improvments [modified] Pin
    Ali Rafiee20-Apr-06 12:01
    Ali Rafiee20-Apr-06 12:01 
    GeneralSelect item Pin
    alexan0824-Dec-04 1:41
    alexan0824-Dec-04 1:41 
    GeneralItem click Pin
    dudic13-Mar-03 5:04
    dudic13-Mar-03 5:04 
    GeneralList Box Background color Pin
    ashwani11-Sep-02 20:11
    ashwani11-Sep-02 20:11 
    GeneralMulti ListBoxes with different tooltips Pin
    Pepe27-Jul-01 6:06
    Pepe27-Jul-01 6:06 
    GeneralDisplay speed/delay Pin
    Parish26-Jun-01 9:37
    Parish26-Jun-01 9:37 
    GeneralSolved :) Re: Display speed/delay Pin
    Parish27-Jun-01 8:28
    Parish27-Jun-01 8:28 
    Generaltooltip window position is not right Pin
    21-Feb-01 8:14
    suss21-Feb-01 8:14 
    GeneralRe: tooltip window position is not right Pin
    23-Feb-01 2:58
    suss23-Feb-01 2:58 

    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.