Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

A Wrapper for MessageBoxIndirect

0.00/5 (No votes)
22 Feb 2000 1  
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