返回介绍

QMessageBox类

发布于 2019-10-04 15:01:36 字数 21337 浏览 935 评论 2 收藏 0

QMessageBox类提供了一个有一条简短消息、一个图标和一些按钮的模式对话框。 详情请见……

#include <qmessagebox.h>

继承了QDialog。

所有成员函数的列表。

公有成员

  • enum Icon { NoIcon = 0, Information = 1, Warning = 2, Critical = 3 }
  • QMessageBox ( QWidget*parent = 0, constchar*name = 0 )
  • QMessageBox ( constQString&caption, constQString&text, Iconicon, intbutton0, intbutton1, intbutton2, QWidget*parent = 0, constchar*name = 0, boolmodal = TRUE, WFlagsf = WStyle_DialogBorder )
  • ~QMessageBox ()
  • QString text () const
  • void setText ( const QString & )
  • Icon icon () const
  • void setIcon ( Icon )
  • const QPixmap * iconPixmap () const
  • void setIconPixmap ( const QPixmap & )
  • QString buttonText ( intbutton ) const
  • void setButtonText ( intbutton, constQString&text )
  • virtual void adjustSize ()
  • TextFormat textFormat () const
  • void setTextFormat ( TextFormat )

静态公有成员

  • int information ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1 = 0, intbutton2 = 0 )
  • int information ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 )
  • int warning ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1, intbutton2 = 0 )
  • int warning ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 )
  • int critical ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1, intbutton2 = 0 )
  • int critical ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 )
  • void about ( QWidget*parent, constQString&caption, constQString&text )
  • void aboutQt ( QWidget*parent, constQString&caption = QString::null )
  • int message ( constQString&caption, constQString&text, constQString&buttonText = QString::null, QWidget*parent = 0, const char * = 0 ) (obsolete)
  • bool query ( constQString&caption, constQString&text, constQString&yesButtonText = QString::null, constQString&noButtonText = QString::null, QWidget*parent = 0, const char * = 0 ) (obsolete)
  • QPixmap standardIcon ( Iconicon, GUIStylestyle ) (obsolete)
  • QPixmap standardIcon ( Iconicon )

属性

  • Icon icon- 消息框的图标
  • QPixmap iconPixmap- 当前图标
  • QString text- 被显示的消息框文本
  • TextFormat textFormat- 消息框中被显示的文本的格式

详细描述

QMessageBox类提供了一个有一条简短消息、一个图标和一些按钮的模式对话框。

消息框用于提供情报信息并且问一些简单的问题。

QMessageBox提供了一个不同信息的范围,大致按两个轴进行排列:严重程度和复杂程度。

按严重程度分:

信息用于普通操作的一部分的消息框
警告用于告诉用户一些不常出现的错误的消息框
严重用于告诉用户严重的错误的消息框

对于每一个严重程度,消息框都有不同的图标。

按复杂程度分为一个按钮(确定)的简单消息、或者用于提问的两个或者甚至三个按钮。

还有一些用于常用情况的静态函数。

实例:

如果程序不能找到一个支持文件,但是能在没有它的情况在做得很好:

QMessageBox::information( this, "Application name",
    "Unable to find the user preferences file.\n"
    "The factory default will be used instead." );

warning()可以用于告诉用户一些不常出现的错误,或者不容易被修复的错误:

switch( QMessageBox::warning( this, "Application name",
        "Could not connect to the <mumble> server.\n"
        "This program can't function correctly "
        "without the server.\n\n",
        "Retry",
        "Quit", 0, 0, 1 ) )
    case 0: // 用户点击“再试”或者按下回车键
        // 再次尝试
        break;
    case 1: // 用户点击“退出”或者按下Esc键
        // 退出
        break;
}

所有消息框的消息的文本部分都可以是多信息文本或者一般文本。如果拟制定一个多信息文本格式字符串,它将会被使用默认样式单来呈现。详细情况请参考QStyleSheet::defaultSheet()。对于包含XML元字符的特定字符串,自动多信息文本检测可能会失败,会把一般文本不正确地解释为多信息文本。在这种情况下,可以使用QStyleSheet::convertFromPlainText()来把你的一般文本字符串转化为在视觉上一致的多信息文本或者明确地通过setTextFormat()设置文本格式。

注意微软视窗用户界面指南强烈建议在把应用程序名称作为这个窗口的标题。

下面是更多的关于如何使用静态成员函数地实例。在这些实例之后,你将会找到非静态成员函数的概述。

退出程序是正常操作的一部分。如果存在没有保存地数据,用户可能应该被被询问他们是否想保存数据。例如:

switch( QMessageBox::information( this, "Application name here",
        "The document contains unsaved changes\n"
        "Do you want to save the changes before exiting?",
        "&Save", "&Discard", "Cancel",
        0,      // Enter == button 0
        2 ) ) { // Escape == button 2
    case 0: // Save被点击或者Alt+S被按下或者Enter被按下。
        // 保存
        break;
    case 1: // Discard被点击或者Alt+D被按下。
        // 不保存但退出
        break;
    case 2: // Cancel被点击或者Alt+C被按下或者Escape被按下。
        // 不退出
        break;
}

为了和微软的建议一致,应用程序的名称被作为窗口标题。Escape按钮撤销整个退出操作,并且按下Enter导致在退出发生之前这些变化被保存。

磁盘已满错误是不常见的(在完美的世界中,它们是存在的)并且它们通常很难变为正确。这个实例使用了预定义的按钮来替换了写在代码中的按钮文本:

switch( QMessageBox::warning( this, "Application name here",
        "Could not save the user preferences,\n"
        "because the disk is full.  You can delete\n"
        "some files and press Retry, or you can\n"
        "abort the Save Preferences operation.",
        QMessageBox::Retry | QMessageBox::Default,
        QMessageBox::Abort | QMessageBox::Escape )) {
    case QMessageBox::Retry: // Retry被点击或者Enter被按下。
        // 再次尝试
        break;
    case QMessageBox::Abort: // Abort被点击或者Escape被按下。
        // 放弃
        break;
}

critical()函数应用被用于保留严重错误。在这个实例中,errorDetails是QString或者const char*,并且QString被用于连接几个字符串:

QMessageBox::critical( 0, "Application name here",
        QString("An internal error occurred. Please ") +
        "call technical support at 123456789 and report\n"+
        "these numbers:\n\n" + errorDetails +
        "\n\n<Application> will now exit." );

在这个实例中,一个“OK”按钮被显示。

QMessageBox提供了一个非常简单的关于框,可以显示你提供的适当的图标和文本。

QMessageBox::about( this, "About <Application>",
        "<Application> is a <one-paragraph blurb>\n\n"
        "Copyright 1951-2002 Such-and-such.  "
        "<License words here.>\n\n"
        "For technical support, call 123456789 or see\n"
        "http://www.such-and-such.com/Application/\n" );

更多信息请参考about()。

如果你想让用户知道这个应用程序是使用Qt构建的(这样他们就会知道你使用的是高质量的工具):你也许喜欢在帮助菜单下的“关于Qt”菜单选项来调用aboutQt()。

如果没有任何标准消息框是合适地,你可以自己手工创建一个QMessageBox并且自己定义按钮文本:

QMessageBox mb( "Application name here",
        "Saving the file will overwrite the original file on the disk.\n"
        "Do you really want to save?",
        QMessageBox::Information,
        QMessageBox::Yes | QMessageBox::Default,
        QMessageBox::No,
        QMessageBox::Cancel | QMessageBox::Escape );
mb.setButtonText( QMessageBox::Yes, "Save" );
mb.setButtonText( QMessageBox::No, "Discard" );
switch( mb.exec() ) {
    case QMessageBox::Yes:
        // 保存并且退出
        break;
    case QMessageBox::No:
        // 不保存退出
        break;
    case QMessageBox::Cancel:
        // 不保存并且不退出
        break;
}

QMessageBox定义了两个枚举变量:Icon和没有名称的按钮类型。Icon为每一个图形用户界面风格定义了Information、Warning和Critical图标。它被构造函数和information()、warning()和critical()静态函数使用。叫做standardIcon()的函数让你能够访问不同的图标。

按钮类型有:

  • Ok - 单按钮消息框地默认值
  • Cancel - 注意这个不是自动和Escape关联的
  • Yes
  • No
  • Abort
  • Retry
  • Ignore

按钮类型可以由上述类型和下面两个修饰成分使用或“|”来进行组合。

  • Default - 让按Enter键等于点击这个按钮。通常用于OK、Yes或者其它相似的。
  • Escape - 让按Escape键等于点击这个按钮。通常用于Abort、Cancel或者其它相似的。

text()、icon()和iconPixmap()函数提供了对消息框的当前文本和像素映射的访问。

setButtonText()和buttonText()提供了对按钮的访问。setText()、setIcon()和setIconPixmap()让你能够修改它。setIcon()和setIconPixmap()的不同是前者接受QMessageBox::Icon并且用于设置标准图标,而后者接受QPixmap并且用于设置自定义图标。

QMessageBox没有信号和槽。

也可以参考QDialog、Isys on error messages、图形用户界面设计手册:消息框和对话框类。


成员类型文档

QMessageBox::Icon

这个枚举变量包含被提供的如下值:

  • QMessageBox::NoIcon - 消息框没有任何图标。
  • QMessageBox::Information - 一个指出这个消息没有超出普通范围的图标。
  • QMessageBox::Warning - 一个指出这个消息是警告,但是还能被处理的图标。
  • QMessageBox::Critical - 一个指出这个消息意味着严重问题的图标。


成员函数文档

QMessageBox::QMessageBox ( QWidget*parent = 0, constchar*name = 0 )

构造一个没有文本和一个标签为“OK”的按钮的消息框。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

parentname参数被传递给QDialog构造函数。

QMessageBox::QMessageBox ( constQString&caption, constQString&text, Iconicon, intbutton0, intbutton1, intbutton2, QWidget*parent = 0, constchar*name = 0, boolmodal = TRUE, WFlagsf = WStyle_DialogBorder )

构造一个标题为caption、文本为text、图标为icon并且最多为三个按钮的消息框。

icon必须为如下之一:

  • QMessageBox::NoIcon
  • QMessageBox::Information
  • QMessageBox::Warning
  • QMessageBox::Critical

每一个按钮,button0button1button2为如下之一:

  • QMessageBox::NoButton
  • QMessageBox::Ok
  • QMessageBox::Cancel
  • QMessageBox::Yes
  • QMessageBox::No
  • QMessageBox::Abort
  • QMessageBox::Retry
  • QMessageBox::Ignore

如果你的消息框少于三个按钮,QMessageBox::NoButton用于靠后的参数。

一个按钮可以和QMessageBox::Default标记进行或运算,这使得它成为默认按钮(当Enter被按下时,它被点击)。

一个按钮可以和QMessageBox::Escape标记进行或运算,这使得它成为撤销或者关闭按钮(当Escape被按下时,它被点击)。

实例:

QMessageBox mb( "Application Name",
        "Hardware failure.\n\nDisk error detected\nDo you want to stop?",
        QMessageBox::NoIcon,
        QMessageBox::Yes | QMessageBox::Default,
        QMessageBox::No  | QMessageBox::Escape, 
        QMessageBox::NoButton );
if ( mb.exec() == QMessageBox::No )
    // 再次尝试

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

如果modal为真,这个消息框变为模式的,否则它变为非模式的。

parentnamemodalf参数被传递给QDialog构造函数。

也可以参考caption、text和icon。

QMessageBox::~QMessageBox ()

销毁这个消息框。

void QMessageBox::about ( QWidget*parent, constQString&caption, constQString&text ) [静态]

显示一个标题为caption并且文本为text的简单关于框。关于框的父对象为parent

about()在四个位置查找合适的图标:

  1. 如果parent->icon()存在,它会首先使用它。
  2. 如果没有,它会尝试一下包含parent的顶级窗口部件。
  3. 如果这个也失败了,它会尝试主窗口部件。
  4. 作为最后的手段,它使用信息图标。

关于框有一个标签为OK的单一按钮。

也可以参考QWidget::icon和QApplication::mainWidget()。

实例:action/application.cpp、application/application.cpp、chart/chartform.cpp、helpviewer/helpwindow.cpp、mdi/application.cpp、menu/menu.cpp和themes/themes.cpp。

void QMessageBox::aboutQt ( QWidget*parent, constQString&caption = QString::null ) [静态]

显示标题为caption并且放在parent(如果parent不为0)的中间关于Qt的简单消息框。这个消息包含这个应用程序正在使用的Qt的版本号。

这个会被包含在帮助菜单中。关于实例请参考examples/menu/menu.cpp。

实例:action/application.cpp、application/application.cpp、chart/chartform.cpp、helpviewer/helpwindow.cpp、menu/menu.cpp、themes/themes.cpp和trivial/trivial.cpp。

void QMessageBox::adjustSize () [虚]

仅在QDialog::exec()或QDialog::show()被调用之前调节消息框的大小来适合内容。

如果消息框在显示之前已经被明显地重新定义大小,这个函数就不会被调用。

从QWidget中重新实现。

QString QMessageBox::buttonText ( intbutton ) const

返回消息框按钮button的文本,或者如果消息框没有包含这个按钮返回零。

也可以参考setButtonText()。

int QMessageBox::critical ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1, intbutton2 = 0 ) [静态]

打开一个标题为caption并且文本为text的严重消息框。这个对话框最多有三个按钮。每个按钮参数button0button1button2被设置为下列各值之一:

  • QMessageBox::NoButton
  • QMessageBox::Ok
  • QMessageBox::Cancel
  • QMessageBox::Yes
  • QMessageBox::No
  • QMessageBox::Abort
  • QMessageBox::Retry
  • QMessageBox::Ignore

如果你不想要三个按钮,设置最后一个按钮或者最后两个按钮为QMessageBox::NoButton。

返回被点击的按钮地标识(QMessageBox::Ok或QMessageBox::No等等)。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考information()和warning()。

实例:network/ftpclient/ftpmainwindow.cpp、process/process.cpp和xml/outliner/outlinetree.cpp。

int QMessageBox::critical ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 ) [静态]

这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。

显示一个标题为caption、文本为text并且按钮分别为1、2、3的严重消息对话框。返回被点击的按钮的数字(0、1或2)。

button0Text为第一个按钮的文本并且它是可选的。如果button0Text没有被提供,“OK”(被翻译的)将被使用。button1Text为第二个按钮的文本并且它是可选的并且button2Text为第三个按钮的文本并且它是可选的。defaultButtonNumber(0、1或2)是默认按钮的索引,按下Return或者Enter和点击这个默认按钮是相同的。它默认为0(第一个按钮)。escapeButtonNumber是Escape按钮的索引,按下Escape和点击这个按钮是相同的。它默认为-1(就是按下Escape什么也不做),提供0、1或2使按下Escape等同于按下对应的按钮。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考information()和warning()。

Icon QMessageBox::icon () const

返回消息框的图标。详细情况请参考“icon”属性。

constQPixmap* QMessageBox::iconPixmap () const

返回当前图标。详细情况请参考“iconPixmap”属性。

int QMessageBox::information ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1 = 0, intbutton2 = 0 ) [静态]

打开一个标题为caption并且文本为text的信息消息框。这个对话框最多有三个按钮。每个按钮参数button0button1button2被设置为下列各值之一:

  • QMessageBox::NoButton
  • QMessageBox::Ok
  • QMessageBox::Cancel
  • QMessageBox::Yes
  • QMessageBox::No
  • QMessageBox::Abort
  • QMessageBox::Retry
  • QMessageBox::Ignore

如果你不想要三个按钮,设置最后一个按钮或者最后两个按钮为QMessageBox::NoButton。

返回被点击的按钮地标识(QMessageBox::Ok或QMessageBox::No等等)。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考warning()和critical()。

实例:action/application.cpp、application/application.cpp、chart/chartform.cpp、dirview/dirview.cpp、fileiconview/qfileiconview.cpp、picture/picture.cpp和qwerty/qwerty.cpp。

int QMessageBox::information ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 ) [静态]

这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。

显示一个标题为caption、文本为text并且按钮分别为1、2、3的信息消息对话框。返回被点击的按钮的数字(0、1或2)。

button0Text为第一个按钮的文本并且它是可选的。如果button0Text没有被提供,“OK”(被翻译的)将被使用。button1Text为第二个按钮的文本并且它是可选的并且button2Text为第三个按钮的文本并且它是可选的。defaultButtonNumber(0、1或2)是默认按钮的索引,按下Return或者Enter和点击这个默认按钮是相同的。它默认为0(第一个按钮)。escapeButtonNumber是Escape按钮的索引,按下Escape和点击这个按钮是相同的。它默认为-1(就是按下Escape什么也不做),提供0、1或2使按下Escape等同于按下对应的按钮。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考warning()和critical()。

int QMessageBox::message ( constQString&caption, constQString&text, constQString&buttonText = QString::null, QWidget*parent = 0, const char * = 0 ) [静态]

这个函数是废弃的。它的提供只是为了保证旧代码能够工作。我们强烈建议在新代码中不要使用它。

使用特定参数直接打开模式消息框。

请使用information()、warning()或critical()来替代。

实例:grapher/grapher.cpp。

bool QMessageBox::query ( constQString&caption, constQString&text, constQString&yesButtonText = QString::null, constQString&noButtonText = QString::null, QWidget*parent = 0, const char * = 0 ) [静态]

这个函数是废弃的。它的提供只是为了保证旧代码能够工作。我们强烈建议在新代码中不要使用它。

使用有两个按钮的模式消息框询问用户。注意caption不总是被显示,它依赖于窗口管理器。

请使用information()、warning()或critical()来替代。

void QMessageBox::setButtonText ( intbutton, constQString&text )

设置消息框按钮button的文本为text。设置一个没有在消息框中出现的按钮的文本会被默默地忽略。

也可以参考buttonText()。

void QMessageBox::setIcon ( Icon )

设置消息框的图标。详细情况请参考“icon”属性。

void QMessageBox::setIconPixmap ( constQPixmap& )

设置当前图标。详细情况请参考“iconPixmap”属性。

void QMessageBox::setText ( constQString& )

设置被显示的消息框文本。详细情况请参考“text”属性。

void QMessageBox::setTextFormat ( TextFormat )

设置消息框中被显示的文本的格式。详细情况请参考“textFormat”属性。

QPixmap QMessageBox::standardIcon ( Iconicon ) [静态]

返回标准图标使用的像素映射。这允许这些像素映射用于更复杂的消息框。icon指定了所需图标,例如QMessageBox::Information、QMessageBox::Warning或QMessageBox::Critical。

QPixmap QMessageBox::standardIcon ( Iconicon, GUIStylestyle ) [静态]

这个函数是废弃的。它的提供只是为了保证旧代码能够工作。我们强烈建议在新代码中不要使用它。

返回标准图标使用的像素映射。这允许这些像素映射用于更复杂的消息框。icon指定了所需图标,例如QMessageBox::Information、QMessageBox::Warning或QMessageBox::Critical。

style不被使用。

QString QMessageBox::text () const

返回被显示的消息框文本。详细情况请参考“text”属性。

TextFormat QMessageBox::textFormat () const

返回消息框中被显示的文本的格式。详细情况请参考“textFormat”属性。

int QMessageBox::warning ( QWidget*parent, constQString&caption, constQString&text, intbutton0, intbutton1, intbutton2 = 0 ) [静态]

打开一个标题为caption并且文本为text的警告消息框。这个对话框最多有三个按钮。每个按钮参数button0button1button2被设置为下列各值之一:

  • QMessageBox::NoButton
  • QMessageBox::Ok
  • QMessageBox::Cancel
  • QMessageBox::Yes
  • QMessageBox::No
  • QMessageBox::Abort
  • QMessageBox::Retry
  • QMessageBox::Ignore

如果你不想要三个按钮,设置最后一个按钮或者最后两个按钮为QMessageBox::NoButton。

返回被点击的按钮地标识(QMessageBox::Ok或QMessageBox::No等等)。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考information()和critical()。

实例:chart/chartform.cpp、i18n/main.cpp、network/mail/smtp.cpp、qwerty/qwerty.cpp、showimg/showimg.cpp和sound/sound.cpp。

int QMessageBox::warning ( QWidget*parent, constQString&caption, constQString&text, constQString&button0Text = QString::null, constQString&button1Text = QString::null, constQString&button2Text = QString::null, intdefaultButtonNumber = 0, intescapeButtonNumber = -1 ) [静态]

这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。

显示一个标题为caption、文本为text并且按钮分别为1、2、3的警告消息对话框。返回被点击的按钮的数字(0、1或2)。

button0Text为第一个按钮的文本并且它是可选的。如果button0Text没有被提供,“OK”(被翻译的)将被使用。button1Text为第二个按钮的文本并且它是可选的并且button2Text为第三个按钮的文本并且它是可选的。defaultButtonNumber(0、1或2)是默认按钮的索引,按下Return或者Enter和点击这个默认按钮是相同的。它默认为0(第一个按钮)。escapeButtonNumber是Escape按钮的索引,按下Escape和点击这个按钮是相同的。它默认为-1(就是按下Escape什么也不做),提供0、1或2使按下Escape等同于按下对应的按钮。

如果parent为0,消息框变为应用程序全局的模式对话框。如果parent为一个窗口部件,消息框变为相对于parent的模式对话框。

也可以参考information()和critical()。


属性文档

Icon icon

这个属性保存的是消息框的图标。

消息框的图标可以是如下预定义图标的一种:

  • QMessageBox::NoIcon
  • QMessageBox::Information
  • QMessageBox::Warning
  • QMessageBox::Critical

用于显示图标的实际像素映射依赖于当前图形用户界面风格。你也可以使用QMessageBox::iconPixmap属性来设置自定义像素映射。默认图标为QMessageBox::NoIcon。

也可以参考iconPixmap。

通过setIcon()设置属性值并且通过icon()来获得属性值。

QPixmap iconPixmap

这个属性保存的是当前图标。

这个图标正在被这个消息框使用。注意很难绘制一个在Motif和Windows风格中看起来比较一致的像素映射,你也许需要绘制两个像素映射。

也可以参考icon。

通过setIconPixmap()设置属性值并且通过iconPixmap()来获得属性值。

QString text

This property holds the message box text to be displayed. 这个属性保存的是被显示的消息框文本。

这个文本将被解释为一般文本或者多信息文本,根据文本格式设置(QMessageBox::textFormat)。默认设置为AutoText,也就是说消息框将会试图自动检测文本格式。

这个属性的默认设置是QString::null。

也可以参考textFormat。

通过setText()设置属性值并且通过text()来获得属性值。

TextFormat textFormat

This property holds the format of the text displayed by the message box. 这个属性保存的是消息框中被显示的文本的格式。

这是当前被消息框使用的文本格式。对于可能选项的解释请参考Qt::TextFormat枚举变量。

默认设置是AutoText。

也可以参考text。

通过setTextFormat()设置属性值并且通过textFormat()来获得属性值。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

JSmiles 回复 woasd 2022-08-03 15:52:31

你说的是这个:

switch (
QMessageBox::question(
this,
tr("手动选择完成?"),
tr("手动选择完成且正确"),
QMessageBox::Yes|QMessageBox::No,QMessageBox::Yes
)
){
case QMessageBox::Yes:
break;
case QMessageBox::No:
// qDebug() "点击Discard";
break;
default:
break;
}
woasd 2022-08-03 15:27:54

为什么没有question函数

~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文