1. 程式人生 > >跟我一起學QT_QT標準對話方塊_字型選擇框

跟我一起學QT_QT標準對話方塊_字型選擇框

標準對話方塊

QT的標準對話方塊分為以下幾種

  1. 顏色對話方塊
  2. 檔案對話方塊
  3. 字型對話方塊
  4. 輸入對話方塊
  5. 訊息對話方塊
  6. 進度對話方塊
  7. 錯誤資訊對話方塊
  8. 嚮導對話方塊

    字型選擇框

    字型選擇框位於 QFontDialog 類中 先新增#include <QFontDialog> 標頭檔案,然後在UI介面上新增一個按鈕
    為這個按鈕的clicked 訊號在MyDialog類中新增一個對應的槽函式

void font_slots_func();

然後我們使用QFontDialog 類中 靜態函式getFont

如果使用者單擊OK,則返回所選字型。如果使用者單擊Cancel,將返回Qt預設字型 函式原型如下:

[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = Q_NULLPTR)

對話方塊是用給定的父元素構造的。如果ok引數不是null,那麼當用戶單擊ok時,它所引用的值被設定為true,當用戶單擊Cancel時,它被設定為false。

所有font_slots_func槽函式我們可以這樣寫

void MyDialog::font_slots_func()
{
    bool isOk;
    QFont font = QFontDialog::getFont(&isOk,this);
    if(isOk)
        ui->FontDlg->setFont(font); //修改按鈕的字型
    else
        qDebug()<<"你沒有選擇任何字型"<<endl;
}

然後為字型選擇按鈕關聯這個槽函式

    //字型選擇框訊號槽連線
    connect(ui->FontDlg,&QPushButton::clicked,this,&MyDialog::font_slots_func);

CTRL+b編譯 CTRL+r 執行執行結果如圖:

執行結果