Qt QMessageBox::information 自定義按鈕

一杯清酒邀明月發表於2024-03-06

一.基本簡介

在使用QT的彈窗提示時,習慣使用

QMessageBox::information

QMessageBox::question

QMessageBox::warning

QMessageBox::critical

一般對於按鈕,是使用系統提供的預設按鈕 例如:QMessageBox::Ok|QMessageBox::Cancel 等

二.如果要自己定義按鈕,使用自定義的按鈕文字,該怎麼做?

答案其實很簡單,以information舉例,如下程式碼:

 1 static int information(QWidget *parent, const QString &title,
 2                            const QString& text,
 3                            int button0, int button1 = 0, int button2 = 0);
 4  
 5 static int information(QWidget *parent, const QString &title,
 6                            const QString& text,
 7                            const QString& button0Text,
 8                            const QString& button1Text = QString(),
 9                            const QString& button2Text = QString(),
10                            int defaultButtonNumber = 0,
11                            int escapeButtonNumber = -1);
12  
13 inline static StandardButton information(QWidget *parent, const QString &title,
14                                   const QString& text,
15                                   StandardButton button0, StandardButton button1 = NoButton)

使用案例

 1  int btnStatus = QMessageBox::information(nulptr,tr("title"),tr("text"),tr("按鈕1"),tr("按鈕2"))
 2  
 3 if(0 == btnStatus)//點選了按鈕1(按鈕索引位置為0,後面的依次增加)
 4 {
 5     //do
 6 }
 7 else if(1 == btnStatus)//點選了按鈕2(按鈕索引位置為1)
 8 {
 9     //do
10 }

相關文章