Phoenix Logo

phoenix_title wx.RichMessageDialog

Extension of wx.MessageDialog with additional functionality.

This class adds the possibility of using a checkbox (that is especially useful for implementing the “Don’t ask me again” kind of dialogs) and an extra explanatory text which is initially collapsed and not shown to the user but can be expanded to show more information.

Notice that currently the native dialog is used only under MSW when using Vista or later Windows version. Elsewhere, or for older versions of Windows, a generic implementation which is less familiar to the users is used. Because of this it’s recommended to use this class only if you do need its extra functionality and use wx.MessageDialog which does have native implementation under all platforms otherwise. However if you do need to put e.g. a checkbox in a dialog, you should definitely consider using this class instead of using your own custom dialog because it will have much better appearance at least under recent Windows versions.

To use this class, you need to create the dialog object and call ShowCheckBox and/or ShowDetailedText to configure its contents. Other than that, it is used in exactly the same way as wx.MessageDialog and supports all the styles supported by it. In particular, ShowModal return value is the same as for wx.MessageDialog. The only difference is that you need to use IsCheckBoxChecked to examine the checkbox value if you had called ShowCheckBox.

Here is a simple example:

def ShowDialog(self):

    if dont_show:
        return

    dlg = wx.RichMessageDialog(self, "Welcome to my wonderful program!")
    dlg.ShowCheckBox("Don't show welcome dialog again")
    dlg.ShowModal() # return value ignored as we have "Ok" only anyhow

    if dlg.IsCheckBoxChecked():
        # ... make sure we won't show it again the next time ...
        dont_show = True

New in version 2.9.2.


class_hierarchy Class Hierarchy

Inheritance diagram for class RichMessageDialog:

method_summary Methods Summary

__init__ Constructor specifying the rich message dialog properties.
GetCheckBoxText Retrieves the label for the checkbox.
GetDetailedText Retrieves the detailed text.
IsCheckBoxChecked Retrieves the state of the checkbox.
ShowCheckBox Shows a checkbox with a given label or hides it.
ShowDetailedText Shows or hides a detailed text and an expander that is used to show or hide the detailed text.
ShowModal Shows the dialog, returning one of wx.ID_OK, wx.ID_CANCEL, wx.ID_YES, wx.ID_NO.

api Class API



class wx.RichMessageDialog(GenericMessageDialog)

Possible constructors:

RichMessageDialog(parent, message, caption=MessageBoxCaptionStr,
                  style=OK|CENTRE)

Extension of MessageDialog with additional functionality.


Methods



__init__(self, parent, message, caption=MessageBoxCaptionStr, style=OK|CENTRE)

Constructor specifying the rich message dialog properties.

Works just like the constructor for wx.MessageDialog.

Parameters:
  • parent (wx.Window) –
  • message (string) –
  • caption (string) –
  • style (long) –


GetCheckBoxText(self)

Retrieves the label for the checkbox.

Return type:string
Returns:The label for the checkbox, will be the empty string if no checkbox is used.


GetDetailedText(self)

Retrieves the detailed text.

Return type:string
Returns:The detailed text or empty if detailed text is not used.


IsCheckBoxChecked(self)

Retrieves the state of the checkbox.

If this method is called before showing the dialog, the initial value of the checkbox, as set by ShowCheckBox is used. If it is called after calling wx.Dialog.ShowModal , the value set by the user is returned.

Return type:bool
Returns:True if the checkbox is checked or False if not.


ShowCheckBox(self, checkBoxText, checked=False)

Shows a checkbox with a given label or hides it.

Parameters:
  • checkBoxText (string) – If the parameter is non-empty a checkbox will be shown with that label, otherwise it will be hidden.
  • checked (bool) – The initial state of the checkbox.


ShowDetailedText(self, detailedText)

Shows or hides a detailed text and an expander that is used to show or hide the detailed text.

Parameters:detailedText (string) – The detailed text that can be expanded when the dialog is shown, if empty no detailed text will be used.


ShowModal(self)

Shows the dialog, returning one of wx.ID_OK, wx.ID_CANCEL, wx.ID_YES, wx.ID_NO.

IsCheckBoxChecked can be called afterwards to retrieve the value of the check box if one was used.

Return type:int

Properties



CheckBoxText

See GetCheckBoxText



DetailedText

See GetDetailedText