Как запустить файловый браузер в приложении Qt? - PullRequest
21 голосов
/ 09 апреля 2011

Мне нужна кнопка, которая при нажатии запускает файловый браузер (например, Ctrl + O в Word) и возвращает путь к файлу, который открывает пользователь.

Я знаю, как сделать кнопку, но что мне делать в слоте, который реагирует на сигнал mouseClicked?

Ответы [ 2 ]

18 голосов
/ 09 апреля 2011

Использование QFileDialog::getOpenFileName.

16 голосов
/ 10 ноября 2012

Что вам нужно сделать, это написать этот код в функции mouse_click!

QStringList fileNames = QFileDialog::getOpenFileNames(this, tr("Open File"),"/path/to/file/",tr("Mp3 Files (*.mp3)"));
ui->listWidget->addItems(fileNames);

*.mp3 отобразит только mp3-файлы, удалите tr("Mp3 Files (*.mp3)"), если вы не хотите фильтровать какие-либо файлы

...