Qt技巧:多視窗互相呼叫
阿新 • • 發佈:2019-01-06
在使用Qt Creator設計ui時,有時需要多個ui間互相呼叫。這裡我會用一個簡單例子,介紹如何用一個視窗呼叫另一個視窗。
在建立Qt Widget Application時,只對預設的ui例項化了,當需要在當前ui呼叫其他ui時,需要在標頭檔案中對要呼叫的ui進行例項化,然後才能呼叫。下面是一個例子,我們要實現的是在basedialog中點選“標準輸入對話方塊”按鈕,呼叫inputdialog。
首先在basedialog.h中包含inputdialog的標頭檔案:
#include "inputdialog.h"
並對類inputDialog例項化:
basedialog.h:
basedialog.cpp:private: Ui::basedialog *ui; inputDialog *inputdlg;
basedialog::basedialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::basedialog)
{
ui->setupUi(this);
inputdlg = new inputDialog;
}
完成例項化之後,對按鈕右鍵新增訊號槽即可實現點選呼叫了。
void basedialog::on_inputButton_clicked()
{
inputdlg->show();
}
原始碼下載: