Click here to Skip to main content
15,885,435 members
Articles / Desktop Programming / MFC
Article

A Wrapper for MessageBoxIndirect

Rate me:
Please Sign up or sign in to vote.
4.79/5 (7 votes)
22 Feb 2000 61.2K   1.7K   23   2
A class which encapsulates MessageBoxIndirect.
  • Download demo project - 16 Kb
  • Download source files - 2 Kb
  • Sample Image - messagebox.gif

    Introduction

    Sometimes you might wish you could use other icons in a message box apart from the ones Windows gives you, or you might want to have more control over how your message box, specify which language to use, etc. Well, there is a way to do all this using the little-known API call MessageBoxIndirect.

    Here is a class which encapsulates MessageBoxIndirect (actually, it inherits from the MESSAGEBOXPARAMS structure which you pass to MessageBoxIndirect). You can use it like an MFC CDialog, although there are no dependencies on MFC.


    Usage

    1. Declare a CMessageBox object.
    #include "MessageBox.h"
    ....
    
    CMessageBox box;

    or

    CMessageBox box(hWnd, "My Text", "My Caption", MB_OK);

    2. Initialize it (If you are just displaying a standard Message Box you can skip this step

    box.SetIcon(IDI_SOMEICON);
    box.SetLangID(MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL));

    3. Call DoModal.

    if(box.DoModal() == MB_OK)
    {
    	// Do something here
    }
    else
    {
    	// Do something else
    }


    That's it!

    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
    Web Developer
    New Zealand New Zealand
    This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

    Comments and Discussions

     
    QuestionSetFont Pin
    Hwewet23-Aug-11 3:39
    Hwewet23-Aug-11 3:39 
    GeneralBest way to handle help messages... Pin
    James R. Twine23-Feb-00 6:44
    James R. Twine23-Feb-00 6:44 

    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.