Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
QFileDialog未从对话框窗口打开,但它确实从主窗口打开 我试图用Qt和C++从对话框窗口打开文件浏览器对话框。我的“dialog.cpp”文件如下所示: #include "dialog.h" #include "ui_dialog.h" #include "QFileDialog" Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); } Dialog::~Dialog() { delete ui; } void Dialog::on_pushButton_Browse_clicked() { QString filename = QFileDialog::getOpenFileName(this, tr("Open File"), "C://", "All files (*.*)"); }_C++_Qt_Dialog - Fatal编程技术网

QFileDialog未从对话框窗口打开,但它确实从主窗口打开 我试图用Qt和C++从对话框窗口打开文件浏览器对话框。我的“dialog.cpp”文件如下所示: #include "dialog.h" #include "ui_dialog.h" #include "QFileDialog" Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); } Dialog::~Dialog() { delete ui; } void Dialog::on_pushButton_Browse_clicked() { QString filename = QFileDialog::getOpenFileName(this, tr("Open File"), "C://", "All files (*.*)"); }

QFileDialog未从对话框窗口打开,但它确实从主窗口打开 我试图用Qt和C++从对话框窗口打开文件浏览器对话框。我的“dialog.cpp”文件如下所示: #include "dialog.h" #include "ui_dialog.h" #include "QFileDialog" Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); } Dialog::~Dialog() { delete ui; } void Dialog::on_pushButton_Browse_clicked() { QString filename = QFileDialog::getOpenFileName(this, tr("Open File"), "C://", "All files (*.*)"); },c++,qt,dialog,C++,Qt,Dialog,我所看到的每一个地方都说这应该不会有问题。所以我试着在我的“mainwindow.cpp”文件中输入相同的代码。这是什么 #include "mainwindow.h" #include "ui_mainwindow.h" #include "ui_dialog.h" #include "QFileDialog" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) {

我所看到的每一个地方都说这应该不会有问题。所以我试着在我的“mainwindow.cpp”文件中输入相同的代码。这是什么

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "ui_dialog.h"
#include "QFileDialog"

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_Open_dialog_clicked()
{
    dialogUi.setupUi(dialog);
    dialog->show();
}

void MainWindow::on_pushButton_Save_clicked()
{
    QString filename = QFileDialog::getOpenFileName(this, tr("Open File"), "C://", "All Files (*.*)");
}

这将打开“文件资源管理器”对话框,不会出现任何问题。但是,我想从主窗口打开的对话框窗口中打开文件资源管理器,该窗口不起作用,即使它是相同的代码。我甚至添加了一个新的MainWindow类(“mainwindow2.cpp”),并尝试从中查看是否是Dialog类导致了问题,但文件浏览器也无法从中打开。它似乎只在主MainWindow类中起作用。(我的意思是,从“mainwindow.cpp”打开的任何窗口都无法打开文件资源管理器对话框,但“mainwindow.cpp”可以打开资源管理器)

在Qdialog中为我工作。现在测试。您可以发布您的signa/slot连接线路吗对不起,我对Qt很陌生,不知道这是什么意思。类似于:QObject::connect(您的按钮对象,信号(单击()),此,插槽(在按钮上浏览)@pavanc在{name}u clicked(),由于您是新使用Qt的,您可以尝试创建一个新项目,看看问题是否仍然存在。在Qdialog中为我工作。现在测试。您可以发布您的signa/slot连接线路吗对不起,我对Qt很陌生,不知道这是什么意思。类似于:QObject::connect(您的按钮对象,信号(单击()),此,插槽(在按钮上浏览)@pavanc在{name}u clicked()上看到格式为
的名称,您可以假设您已经在
QDesigner
@SeanGaffney的帮助下创建了连接。我已经尝试了您的代码,但没有遇到任何问题,因为您刚刚使用Qt,您可以尝试创建一个新项目,看看问题是否仍然存在。