A small CButton-derived class that will display a popup menu when clicked. Easy to use and very handy for dialog based application.
To use this class with a WTL dialog, first include the header file in the
#include <span class="code-string">"buttonmenu.h"</span>
Next, add a CButtonMenu object to the class:
Next (and this is important), add a
REFLECT_NOTIFICATIONS() call to your dialogs message map (else the button won't get the
BN_CLICKED notification message):
Now subclass an existing button control and set the popup menu that you want displayed in your dialogs
Finally, add the necessary
COMMAND_ID_HANDLERs for your popup menu commands.
That's it! The button will be displayed with an arrow (using the Marlett font if available), and will display a popup menu when clicked.
When designing a dialog-box that uses this class, instead of using a normal button control, use a checkbox control that has the "Push like" style-bit set. The advantage of using a checkbox is that the button will stay pushed whilst the popup menu is displayed (see the example project for more details)