1. 程式人生 > >Qt之標準對話方塊(檔案對話方塊)

Qt之標準對話方塊(檔案對話方塊)

檔案對話方塊

目錄

檔案對話方塊(單檔案)

1、包含標頭檔案 #include< QFileDialog>

void Widget::on_FileButton_clicked()
{
    QString fileName = QFileDialog::getOpenFileName(this,
                                                    tr("檔案對話方塊!"),
                                                    "F:",
                                                    tr
("圖片檔案(*png *jpg);;" "本本檔案(*txt)")); qDebug()<<"filename : "<<fileName; }
  • 使用 QFileDialog 類中的 getOpenFileName() 函式來獲取選擇的檔名,這個函式會以模態方式執行一個檔案對話方塊。
  • 這個函式返回選擇檔案的檔名。
  • 它的四個引數的作用分別是:指定父視窗、設定對話方塊標題、指定預設開啟的目錄路徑和設定檔案型別的過濾器。
  • 如果不指定檔案過濾器,則預設選擇所有型別的檔案。
  • 注意:程式碼中 *png 和 *jpg 之間需要一個空格。
  • 可以設定不同型別的過濾器,不同型別間用兩個分號 “;;”隔開。

效果如下:
這裡寫圖片描述

檔案對話方塊(多檔案)

void Widget::on_FileButton_clicked()
{
    QStringList fileNames = QFileDialog::getOpenFileNames(this,
                                                    tr("檔案對話方塊!"),
                                                    "F:"
, tr("圖片檔案(*png *jpg);;" "本本檔案(*txt)")); qDebug()<<"filenames : "<<fileNames; }
  • 使用 getOpenFileNames() 函式。
  • 多個檔名存放在 QStringList 型別變數中。
  • 除了使用這些靜態函式,還可以建立對話方塊物件來操作。
  • QFileDialog 類還提供了 getSaveFileName() 函式來實現儲存檔案對話方塊和檔案另存為對話方塊。
  • QFileDialog 類還提供 getExistingDirectory() 函式來獲取一個已存在的資料夾路徑。

實現效果如下:
這裡寫圖片描述