查看源代码 wxMessageDialog (wx v2.4.3)

此类表示一个对话框,用于显示单行或多行消息,并提供确定、是、否和取消按钮的选择。

样式

此类支持以下样式

  • wxOK: 在消息框中放置一个“确定”按钮。可以与 wxCANCEL 组合使用。

  • wxCANCEL: 在消息框中放置一个“取消”按钮。必须与 wxOKwxYES_NO 组合使用。

  • wxYES_NO: 在消息框中放置“是”和“否”按钮。建议始终将 wxCANCEL 与此样式一起使用,否则在 wxMSW 下,消息框将没有关闭按钮,用户将被迫回答它。

  • wxHELP: 在消息框中放置一个“帮助”按钮。如果其标签未从默认标签更改,则此按钮可以具有特殊外观或特殊位置。请注意,在 wxOSX/Cocoa 中,从非主线程显示消息框时,不支持使用此按钮。自 wxWidgets 2.9.3 起可用。

  • wxNO_DEFAULT: 使“否”按钮成为默认按钮,只能与 wxYES_NO 一起使用。

  • wxCANCEL_DEFAULT: 使“取消”按钮成为默认按钮,只能与 wxCANCEL 一起使用。此样式目前在 wxOSX 中不受支持(并被忽略)。

  • wxYES_DEFAULT: 使“是”按钮成为默认按钮,这是默认行为,此标志的存在仅仅是为了与 wxNO_DEFAULT 对称。

  • wxOK_DEFAULT: 使“确定”按钮成为默认按钮,这是默认行为,此标志的存在仅仅是为了与 wxCANCEL_DEFAULT 对称。

  • wxICON_NONE: 如果可能,在对话框中不显示图标(如果当前平台强制使用,则仍可能显示图标)。可以使用此样式来防止对话框使用基于 wxYES_NO 存在的默认图标,如以下 wxICON_QUESTIONwxICON_INFORMATION 文档中所述。

  • wxICON_ERROR: 在对话框中显示错误图标。

  • wxICON_WARNING: 在对话框中显示警告图标。此样式应与信息性警告一起使用,或者与 wxYES_NOwxCANCEL 结合使用,用于可能产生严重后果的问题(在这种情况下,macOS 上使用警告图标)。

  • wxICON_QUESTION: 显示问号符号。此图标会自动与 wxYES_NO 一起使用,因此通常无需显式指定它。当使用任务对话框来实现消息对话框时(即在 Windows Vista 或更高版本下运行时),此样式在 wxMSW 下的消息对话框中不受支持,因为 Microsoft 指南 指示不应将图标用于例行确认。如果指定了此样式,则不会显示图标。

  • wxICON_INFORMATION: 显示信息符号。如果未给出 wxYES_NO,则默认使用此图标,因此通常无需显式指定它。

  • wxICON_EXCLAMATION: wxICON_WARNING 的别名。

  • wxICON_HAND: wxICON_ERROR 的别名。

  • wxICON_AUTH_NEEDED: 显示需要身份验证的符号。仅当使用任务对话框来实现消息对话框时(即在 Windows Vista 或更高版本下运行时),此样式才在 wxMSW 下的消息对话框中受支持。在其他情况下,将使用默认的图标选择逻辑。请注意,这可以与其他样式组合以提供回退。例如,使用 wxICON_AUTH_NEEDED | wxICON_QUESTION 将在 Windows Vista 或更高版本上显示盾牌符号,在其他平台上显示问号符号。自 wxWidgets 2.9.5 起可用

  • wxSTAY_ON_TOP: 使消息框始终位于所有其他窗口的顶部,而不仅仅是其父窗口的顶部(目前仅在 MSW 和 GTK 下实现)。

  • wxCENTRE: 使消息框在其父窗口上居中,如果未指定父窗口,则在屏幕上居中。在 MSW 下设置此样式没有任何区别,因为对话框始终在其父窗口上居中。

参见:概述 cmndlg

此类派生自以下类,并可以使用其函数

wxWidgets 文档:wxMessageDialog

摘要

函数

销毁对象

构造函数,用于指定消息框属性。

类型

-type wxMessageDialog() :: wx:wx_object().

函数

-spec destroy(This :: wxMessageDialog()) -> ok.

销毁对象

-spec new(Parent, Message) -> wxMessageDialog()
             when Parent :: wxWindow:wxWindow(), Message :: unicode:chardata().

等效于 new(Parent, Message, [])

-spec new(Parent, Message, [Option]) -> wxMessageDialog()
             when
                 Parent :: wxWindow:wxWindow(),
                 Message :: unicode:chardata(),
                 Option ::
                     {caption, unicode:chardata()} |
                     {style, integer()} |
                     {pos, {X :: integer(), Y :: integer()}}.

构造函数,用于指定消息框属性。

使用 wxDialog:showModal/1 显示对话框。

style 可以是上面描述的标识符的位列表。

请注意,并非所有样式都兼容:只能指定 wxOKwxYES_NO 中的一个(并且必须指定一个),并且最多可以使用一个默认按钮样式,并且仅当消息框中显示相应的按钮时才有效。