Я хочу, чтобы мои пользователи выбирали существующий файл из файловой системы. Похоже, решение Qt QFileDialog
. Я посмотрел документы и придумал что-то вроде этого:
void MainWindow::openFileDialog()
{
const QString& inifilePath =
QFileDialog::getOpenFileName(this,
tr("Select Ini file"),
QStandardPaths::writableLocation(QStandardPaths::DesktopLocation),
tr("Ini files (*.ini)"));
qDebug() << inifilePath;
}
MainWindow
- мой класс главного окна. Проблема в том, что диалоговое окно файла открывается недопустимо медленно. После этого он все еще глючит. Если вы щелкнете правой кнопкой мыши что-нибудь на боковой панели, то снова понадобится целая вечность, чтобы отобразить параметры щелчка правой кнопкой мыши, и вы получите вывод, похожий на предупреждение во время выполнения:
***********Create CommApi2Trayhelper************
***********Destruct CommApi2TrayHelper************
**********CommApi2TrayHelper::UnInitCheck*************
Когда пользователь выбирает какой-либо файл и нажимает кнопку OKвыдает еще одно предупреждение во время выполнения:
shell\comdlg32\fileopensave.cpp(14403)\comdlg32.dll!00007FFD757795AE: (caller: 00007FFD757A8291) ReturnHr(1) tid(1d9c) 80004005 Unspecified error CallContext:[\PickerModalLoop]
Все это заставляет меня поверить, что я что-то делаю неправильно, хотя я делаю именно то, что делают примеры в документации. Что я делаю неправильно?