在Qt中如何打开QFileDialog::getOpenFileNames在用户主页中

In the Qt how to open QFileDialog::getOpenFileNames in user home

本文关键字:getOpenFileNames 主页 用户 何打开 Qt QFileDialog      更新时间:2023-10-16
我正在使用Qt QFileDialog::

getSaveFileName和QFileDialog::getOpenFileNames供用户选择保存文件的位置以及在我的应用程序中打开的文件。

此函数的第三个参数是您希望默认情况下打开窗口的路径。在 linux 中,如何让对话框在用户主页中打开,在窗口中如何让对话框在 win 7 的用户用户文件夹中打开或在 win xp 的"我的文档"中打开?

目前我正在使用这样的对话框:QFileDialog::getOpenFileNames(this, "Select a file to open...", HOME); 其中 HOME 是一个预处理器宏,在 UNIX 中是 ~ 在窗口中是 C:\

Unix 不起作用,并在二进制文件所在的同一文件夹中打开对话框。

使用 QDir::homePath

QFileDialog::getOpenFileNames(this, "Select a file to open...", QDir::homePath())

另外,如果您想对现有文件应用过滤器,可以尝试以下操作:

QString filter = "File Description (*.extention)";
// For example: "Mpeg Layer 3 music files (*.mp3)"
QFileDialog::getOpenFileName(this, "Select a file...", QDir::homePath(), filter);

然后,一旦用户选择一个文件,QFileDialog::getOpenFileName函数就会返回该文件的绝对地址。