Возможно, эта проблема связана с неправильным определением родительского виджетов. В руководстве QT или примерах, доступных онлайн, первый аргумент, переданный QFileDialog :: getOpenFileName (или аналогичные функции), как правило, «это». В моем случае, если я вызываю следующую функцию с «этим», она откроет диалоговое окно и другое окно, которое не содержит ничего и имеет заголовок, который совпадает с именем исполняемого файла. Я попытался избавиться от второго нежелательного окна без успеха. Я заменил «this» на «gui :: parentWidget()» или «0», все еще та же проблема. Также, если я правильно помню, у меня не было этой проблемы до обновления QT до версии 5.0.2. Любая помощь будет оценена по достоинству.QFileDialog открывает второе (возможно родительское) нежелательное окно
void gui::on_coordinatesBrowse_clicked()
{
QString fileName = QFileDialog::getOpenFileName(this,"Open File");
//.....
}
и у меня есть:
gui::gui(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::gui)
{
ui->setupUi(this);
//.....
}
и
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
gui mainW;
mainW.show();
return a.exec();
}
Я никогда не видел такого поведения. Хотя из-за сложной библиотечной зависимости я застрял в qt-4.8.X. – drescherjm
Кстати, это на окнах? Если это так, черный фон окна с обычной границей окон? – drescherjm
Какая ОС это? –