The wx.MessageDialog is a special kind of beast. Although the class is derived from wx.Dialog it really isn’t one, but rather a shim that directly invokes the platform’s native message dialog. That means we do not have the full range of control over it as we would for a real wx dialog object. In other words, this is a case where it might look a little like a duck, but it does not quack like a duck.
You do have options, however, if the native wx.MessageDialog doesn’t meet your needs. You can create your own dialog class derived fromwx.Dialog and put content and controls on it however you like. There is also a MessagePanel class in wx.lib.msgpanal that can be used to layout the text and buttons using an API very similar to the wx.MessageDialog.