Qt 是一個跨平臺C++圖形界面開發庫,利用Qt可以快速開發跨平臺窗體應用程式,在Qt中我們可以通過拖拽的方式將不同組件放到指定的位置,實現圖形化開發極大的方便了開發效率,本章將重點介紹標準對話框`QInputDialog`、`QFileDialog `這兩種對話框組件的常用方法及靈活運用。在 Qt... ...
Qt 是一個跨平臺C++圖形界面開發庫,利用Qt可以快速開發跨平臺窗體應用程式,在Qt中我們可以通過拖拽的方式將不同組件放到指定的位置,實現圖形化開發極大的方便了開發效率,本章將重點介紹標準對話框QInputDialog
、QFileDialog
這兩種對話框組件的常用方法及靈活運用。
在 Qt 中,標準對話框提供了一些常見的用戶交互界面,用於執行特定任務,例如獲取用戶輸入、選擇文件路徑、顯示消息等。這些對話框通常具有標準化的外觀和行為,使得在不同的平臺上能夠保持一致性。在一般的開發過程中,標準對話框是開發者常用的工具之一。
1.1 QInputDialog
QInputDialog
類提供了一種簡單的方法,用於獲取用戶的輸入。它可以用於獲取文本、整數、浮點數等類型的輸入。
以下是 QInputDialog
類的一些常用方法的說明和概述,以表格形式列出:
方法 | 描述 |
---|---|
getText(QWidget *parent, const QString &title, const QString &label, QLineEdit::EchoMode mode = QLineEdit::Normal, const QString &text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()) -> QString |
顯示一個文本輸入對話框,返回用戶輸入的文本。 |
getInt(QWidget *parent, const QString &title, const QString &label, int value = 0, int minValue = -2147483647, int maxValue = 2147483647, int step = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()) -> int |
顯示一個整數輸入對話框,返回用戶輸入的整數。 |
getDouble(QWidget *parent, const QString &title, const QString &label, double value = 0, double minValue = -2147483647, double maxValue = 2147483647, int decimals = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()) -> double |
顯示一個浮點數輸入對話框,返回用戶輸入的浮點數。 |
getItem(QWidget *parent, const QString &title, const QString &label, const QStringList &items, int current = 0, bool editable = true, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone) -> QString |
顯示一個列表輸入對話框,返回用戶選擇的項。 |
getMultiLineText(QWidget *parent, const QString &title, const QString &label, const QString &text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()) -> QString |
顯示一個多行文本輸入對話框,返回用戶輸入的文本。 |
這些方法提供了不同類型的輸入對話框,包括文本、整數、浮點數、列表等。通過這些方法,開發者可以方便地與用戶交互,獲取用戶輸入的信息。需要註意的是,這些方法都是靜態方法,可以直接通過類名 QInputDialog
調用。
為了方便展示這四種標準輸入框的使用,此處讀者可自行繪製如下所示的頁面UI
佈局,並自行導入#include <QInputDialog>
與#include <QLineEdit>
兩個頭文件;
1.1.3 文本輸入
通過getText
方法實現,QInputDialog::getText
是 Qt 中用於顯示一個簡單的對話框,其中包含一個用於輸入文本的欄位的靜態方法。這個方法通常用於獲取用戶輸入的文本。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。label
: 輸入欄位上方的文本標簽。echo
: 輸入文本時的回顯模式,可以是QLineEdit::Normal
、QLineEdit::NoEcho
等。text
: 初始文本。ok
: 一個布爾指針,用於獲取對話框的 OK 按鈕的狀態。flags
: 可選的視窗標誌。
方法返回用戶輸入的文本,如果用戶取消了對話框,則返回一個空字元串。你可以根據需要調整標簽、初始文本、回顯模式等參數,以滿足你的具體需求。
該方法要求用戶傳入標題EchoMode
等必備參數,需要註意的是如果讀者想要輸入時隱藏顯示文本則可以直接設置QLineEdit::Password
為密碼模式,此時輸入的密碼將會被*
號代替,代碼如下;
void MainWindow::on_pushButton_text_clicked()
{
QString dlgTitle="輸入文字對話框";
QString txtLabel="請輸入文件名";
QString defaultInput="新建文件.txt";
QLineEdit::EchoMode echoMode=QLineEdit::Normal; // 正常文字輸入
// QLineEdit::EchoMode echoMode=QLineEdit::Password; // 密碼輸入
bool flag = false;
QString text = QInputDialog::getText(this, dlgTitle,txtLabel, echoMode,defaultInput, &flag);
if (flag && !text.isEmpty())
{
ui->plainTextEdit->appendPlainText(text);
}
}
代碼運行後點擊文本輸入
按鈕,則可彈出輸入框,如下所示;
1.1.2 整數輸入
通過getInt
方法實現,QInputDialog::getInt
是 Qt 中用於顯示一個簡單的對話框,其中包含一個用於輸入整數的欄位的靜態方法。這個方法通常用於獲取用戶輸入的整數。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。label
: 輸入欄位上方的文本標簽。value
: 初始值。min
: 最小值。max
: 最大值。step
: 步長,表示每次增減的量。ok
: 一個布爾指針,用於獲取對話框的 OK 按鈕的狀態。flags
: 可選的視窗標誌。
方法返回用戶輸入的整數,如果用戶取消了對話框,則返回 0。你可以根據需要調整標簽、初始值、範圍、步長等參數,以滿足你的具體需求。
該方法提供了一個SpinBox
選擇框,在輸入時可以通過傳入minValue
限制最小值,maxValue
限制最大值,通過stepValue
設置每次步長,代碼如下;
void MainWindow::on_pushButton_int_clicked()
{
QString dlgTitle="輸入整數對話框";
QString txtLabel="設置字體大小";
int defaultValue=ui->plainTextEdit->font().pointSize(); // 現有字體大小
int minValue=6, maxValue=50, stepValue=1; // 範圍(步長)
bool flag=false;
int inputValue = QInputDialog::getInt(this, dlgTitle,txtLabel,defaultValue, minValue,maxValue,stepValue,&flag);
if (flag)
{
QFont font=ui->plainTextEdit->font();
font.setPointSize(inputValue);
ui->plainTextEdit->setFont(font);
// 顯示在編輯框內
QString stringValue = QString::number(inputValue);
ui->plainTextEdit->appendPlainText(stringValue);
}
}
代碼運行後點擊整數輸入
按鈕,則可彈出輸入框,整數選擇最小被限制在了6
而最大限製為50
,如下所示;
1.1.3 浮點數輸入
通過getDouble
方法實現,QInputDialog::getDouble
是 Qt 中用於顯示一個簡單的對話框,其中包含一個用於輸入浮點數的欄位的靜態方法。這個方法通常用於獲取用戶輸入的浮點數。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。label
: 輸入欄位上方的文本標簽。value
: 初始值。min
: 最小值。max
: 最大值。decimals
: 小數位數。ok
: 一個布爾指針,用於獲取對話框的 OK 按鈕的狀態。flags
: 可選的視窗標誌。
方法返回用戶輸入的浮點數,如果用戶取消了對話框,則返回 0.0。你可以根據需要調整標簽、初始值、範圍、小數位數等參數,以滿足你的具體需求。
該方法提供了一個SpinBox
選擇框,浮點數的輸入同樣可以限制輸入長度,同時浮點數也可以指定小數點的位數,通過decimals
指定為兩位顯示,代碼如下;
void MainWindow::on_pushButton_float_clicked()
{
QString dlgTitle="輸入浮點數對話框";
QString txtLabel="輸入一個浮點數";
float defaultValue=3.13;
float minValue=0, maxValue=10000; // 範圍
int decimals=2; // 小數點位數
bool flag=false;
float inputValue = QInputDialog::getDouble(this, dlgTitle,txtLabel,defaultValue, minValue,maxValue,decimals,&flag);
if (flag)
{
QString str=QString::asprintf("輸入了一個浮點數:%.2f",inputValue);
ui->plainTextEdit->appendPlainText(str);
}
}
代碼運行後點擊浮點數輸入
按鈕,則可彈出輸入框,浮點數選擇最小被限制在了0
而最大限製為10000
,預設值為3.13
保留長度為兩位,如下所示;
1.1.4 單選框輸入
通過getItem
方法實現,該方法適合於只讓用戶選擇特定的內容,QInputDialog::getItem
是 Qt 中用於顯示一個簡單的對話框,其中包含一個下拉框(QComboBox)供用戶選擇的靜態方法。這個方法通常用於獲取用戶從列表中選擇的項。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。label
: 下拉框上方的文本標簽。items
: 字元串列表,表示下拉框中的選項。currentItem
: 初始時被選中的項的索引。editable
: 是否允許用戶編輯下拉框中的文本。ok
: 一個布爾指針,用於獲取對話框的 OK 按鈕的狀態。在這個例子中,我們傳遞了nullptr
,因為我們不關心 OK 按鈕的狀態。flags
: 可選的視窗標誌。
方法返回用戶選擇的項,如果用戶取消了對話框,則返回一個空字元串。你可以根據需要調整標簽、初始選中項、是否可編輯等參數,以滿足你的具體需求。代碼如下所示;
void MainWindow::on_pushButton_checkbox_clicked()
{
QStringList items; // 列表內容
items <<"優秀"<<"良好"<<"合格"<<"不合格"; // 放入列表
QString dlgTitle="條目選擇對話框";
QString txtLabel="請選擇級別";
int curIndex=0; // 初始選擇項
bool editable=false; // 是否可編輯
bool flag=false;
QString text = QInputDialog::getItem(this, dlgTitle,txtLabel,items,curIndex,editable,&flag);
if (flag && !text.isEmpty())
{
ui->plainTextEdit->appendPlainText(text);
}
}
代碼運行後點擊單選框輸入
按鈕,則可彈出單選框窗體,讀者可選擇對應的選項,如下所示;
2.1 QFileDialog
QFileDialog
類用於打開和保存文件的標準對話框。它提供了用戶友好的界面,使得用戶可以輕鬆地選擇文件或目錄,在使用時同樣需要導入#include <QFileDialog>
頭文件。
以下是 QFileDialog
類的一些常用方法的說明和概述,以表格形式列出:
方法 | 描述 |
---|---|
getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
打開文件對話框,獲取用戶選擇的文件名。 |
getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
打開文件對話框,獲取用戶選擇的多個文件名。 |
getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
保存文件對話框,獲取用戶輸入的文件名。 |
getExistingDirectory(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), Options options = ShowDirsOnlyDontResolveSymlinks) |
用於在文件系統中獲取現有目錄的路徑。 |
getExistingDirectoryUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), QFileDialog::Options options = ShowDirsOnlyDontResolveSymlinks) |
用於在文件系統中獲取現有目錄的路徑。 |
getSaveFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
保存文件對話框,獲取用戶輸入的文件的 URL。 |
getOpenFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
打開文件對話框,獲取用戶選擇的文件的 URL。 |
getOpenFileUrls(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
打開文件對話框,獲取用戶選擇的多個文件的 URL。 |
getSaveFileUrls(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, Options options = 0) |
保存文件對話框,獲取用戶輸入的多個文件的 URL。 |
setLabelText(QFileDialog::DialogLabel label, const QString &text) |
設置對話框中指定標簽的文本。 |
setLabelText(QFileDialog::DialogLabel label, const QUrl &url) |
設置對話框中指定標簽的文本為 URL。 |
setOption(QFileDialog::Option option, bool on = true) |
啟用或禁用對話框的指定選項。 |
setOptions(QFileDialog::Options options) |
設置對話框的選項。 |
setFileMode(QFileDialog::FileMode mode) |
設置對話框的文件模式(打開、保存、目錄選擇等)。 |
setAcceptMode(QFileDialog::AcceptMode mode) |
設置對話框的接受模式,是打開文件還是保存文件。 |
setViewMode(QFileDialog::ViewMode mode) |
設置對話框的視圖模式,如詳細視圖、圖標視圖等。 |
setDirectory(const QString &directory) |
設置對話框打開時的預設目錄。 |
setDirectoryUrl(const QUrl &directory) |
設置對話框打開時的預設目錄的 URL。 |
setFilter(const QString &filter) |
設置對話框的文件類型過濾器,如"文本文件 (.txt);;所有文件 ()"。 |
setNameFilter(const QString &filter) |
設置對話框的文件名過濾器,如"*.txt"。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
setLabelText(QFileDialog::DialogLabel label, const QString &text) |
設置對話框中指定標簽的文本。 |
setLabelText(QFileDialog::DialogLabel label, const QUrl &url) |
設置對話框中指定標簽的文本為 URL。 |
setOption(QFileDialog::Option option, bool on = true) |
啟用或禁用對話框的指定選項。 |
setOptions(QFileDialog::Options options) |
設置對話框的選項。 |
setFileMode(QFileDialog::FileMode mode) |
設置對話框的文件模式(打開、保存、目錄選擇等)。 |
setAcceptMode(QFileDialog::AcceptMode mode) |
設置對話框的接受模式,是打開文件還是保存文件。 |
setViewMode(QFileDialog::ViewMode mode) |
設置對話框的視圖模式,如詳細視圖、圖標視圖等。 |
setDirectory(const QString &directory) |
設置對話框打開時的預設目錄。 |
setDirectoryUrl(const QUrl &directory) |
設置對話框打開時的預設目錄的 URL。 |
setFilter(const QString &filter) |
設置對話框的文件類型過濾器,如"文本文件 (.txt);;所有文件 ()"。 |
setNameFilter(const QString &filter) |
設置對話框的文件名過濾器,如"*.txt"。 |
setDefaultSuffix(const QString &suffix) |
設置預設的文件尾碼,用於在用戶未指定文件尾碼時追加到文件名。 |
setMimeTypeFilters(const QStringList &filters) |
設置對話框的 MIME 類型過濾器。 |
setSidebarUrls(const QList<QUrl> &urls) |
設置對話框側邊欄的 URL 列表。 |
setProxyModel(QAbstractProxyModel *proxyModel) |
設置對話框使用的代理模型。 |
setHistory(const QStringList &paths) |
設置對話框歷史記錄的路徑列表。 |
這些方法提供了一系列功能,包括打開文件、保存文件、選擇目錄等,以及對對話框的一些屬性進行設置。這樣,開發者可以方便地使用這些方法構建出符合應用需求的文件對話框。需要註意的是,這些方法中的許多參數都有預設值,因此在大多數情況下,開發者可以選擇性地調用這些方法。
2.1.1 選擇文件
在選擇單個文件時可以通過調用getOpenFileName
方法實現,QFileDialog::getOpenFileName
是 Qt 中用於顯示打開文件對話框並獲取用戶選擇的文件名的靜態方法。它通常用於在用戶需要選擇一個文件進行打開操作時,例如載入文件等場景。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。dir
: 預設的目錄路徑。filter
: 文件類型過濾器,用於篩選可打開的文件類型。可以使用分號分隔多個過濾器,例如"Text Files (*.txt);;All Files (*)"
。
方法返回用戶選擇的文件名,如果用戶取消了對話框,則返回一個空字元串。你可以根據需要調整過濾器、預設目錄等參數,以滿足你的具體需求。
通過最後一個參數來指定需要打開的文件類型,通常可傳入一組字元串來實現過濾,當打開後可以通過aFileName
拿到文件具體路徑,代碼如下;
void MainWindow::on_pushButton_file_clicked()
{
QString curPath=QDir::currentPath(); // 獲取系統當前目錄
// QString curPath=QCoreApplication::applicationDirPath(); // 獲取應用程式的路徑
QString dlgTitle="選擇一個文件"; // 對話框標題
QString filter="文本文件(*.txt);;圖片文件(*.jpg *.gif *.png);;所有文件(*.*)"; // 文件過濾器
QString aFileName=QFileDialog::getOpenFileName(this,dlgTitle,curPath,filter);
if (!aFileName.isEmpty())
{
ui->plainTextEdit->appendPlainText(aFileName);
}
}
打開效果圖如下所示;
同理,當我們需要選擇多個文件並打開時只需要將QString
修改為QStringList
這樣當文件被打開後則可以通過迴圈輸出fileList
列表來獲取所有路徑信息,如下代碼所示;
void MainWindow::on_pushButton_multiple_clicked()
{
// QString curPath=QCoreApplication::applicationDirPath(); // 獲取應用程式的路徑
QString curPath=QDir::currentPath(); // 獲取系統當前目錄
QString dlgTitle="選擇多個文件"; // 對話框標題
QString filter="文本文件(*.txt);;圖片文件(*.jpg *.gif *.png);;所有文件(*.*)"; // 文件過濾器
QStringList fileList=QFileDialog::getOpenFileNames(this,dlgTitle,curPath,filter);
for (int i=0; i<fileList.count();i++)
{
// 迴圈將文件路徑添加到列表中
ui->plainTextEdit->appendPlainText(fileList.at(i));
}
}
在選擇時可以通過拖拽選中的方式選擇多個文件,如下圖所示;
2.1.2 選擇目錄
選擇目錄時可以調用getExistingDirectory
方法,QFileDialog::getExistingDirectory
是 Qt 中用於顯示選擇目錄對話框並獲取用戶選擇的目錄的靜態方法。它通常用於在用戶需要選擇一個目錄時,例如保存文件到特定目錄或載入文件等場景。
方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。dir
: 預設的目錄路徑。options
: 對話框的選項。在示例中,使用了QFileDialog::ShowDirsOnly
表示只顯示目錄,並且QFileDialog::DontResolveSymlinks
表示不解析符號鏈接。
方法返回用戶選擇的目錄路徑,如果用戶取消了對話框,則返回一個空字元串。你可以根據需要調整預設目錄、選項等參數,以滿足你的具體需求。
void MainWindow::on_pushButton_dirfile_clicked()
{
QString curPath=QCoreApplication::applicationDirPath(); // 獲取應用程式的路徑
// QString curPath=QDir::currentPath(); // 獲取系統當前目錄
// 調用打開文件對話框打開一個文件
QString dlgTitle="選擇一個目錄"; // 對話框標題
QString selectedDir=QFileDialog::getExistingDirectory(this,dlgTitle,curPath,QFileDialog::ShowDirsOnly);
if (!selectedDir.isEmpty())
{
ui->plainTextEdit->appendPlainText(selectedDir);
}
}
選擇目錄輸出效果圖如下所示;
2.1.3 保存文件
保存文件可以通過調用getSaveFileName
方法來實現,QFileDialog::getSaveFileName
是 Qt 中用於顯示保存文件對話框並獲取用戶選擇的文件名的靜態方法。它通常用於在用戶將文件保存到磁碟時獲取文件的保存路徑。
該方法的參數包括:
parent
: 對話框的父視窗。傳入nullptr
表示沒有父視窗。caption
: 對話框的標題。dir
: 預設的目錄路徑。filter
: 文件類型過濾器,用於篩選可保存的文件類型。可以使用分號分隔多個過濾器,例如"Text Files (*.txt);;All Files (*)"
。
方法返回用戶選擇的文件名,如果用戶取消了對話框,則返回一個空字元串。你可以根據需要調整過濾器、預設目錄等參數,以滿足你的具體需求。
void MainWindow::on_pushButton_save_clicked()
{
QString curPath=QCoreApplication::applicationDirPath(); // 獲取應用程式的路徑
QString dlgTitle="保存文件"; // 對話框標題
QString filter="文本文件(*.txt);;h文件(*.h);;C++文件(.cpp);;所有文件(*.*)"; // 文件過濾器
QString aFileName=QFileDialog::getSaveFileName(this,dlgTitle,curPath,filter);
if (!aFileName.isEmpty())
{
ui->plainTextEdit->appendPlainText(aFileName);
}
}
保存文件對話框如下圖所示,當點擊後則可以將文件保存到特定目錄下;
本博客所有文章除特別聲明外,均採用 BY-NC-SA 許可協議。轉載請註明出處!