QDialog不会出现,除非我调用它
QDialog will not appear except if I call it?
这不起作用:
void MainWindow::on_left_win_clicked()
{
Dialog *dialog1 = new Dialog(this);
dialog1->show();
return;
}
但是,这确实:
void MainWindow::on_left_win_clicked()
{
QDialog *dialog1 = new QDialog(this);
dialog1->show();
return;
}
我只是使用了标准的Qt设计器表单类-底部带有按钮>对话框
编辑:添加了dialog.h和dialog.cpp
dialog.h 这只是标准的 dialog.h 没有在设计器窗口中为我创建的更改。
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
namespace Ui {
class Dialog;
}
class Dialog : public QDialog
{
Q_OBJECT
public:
explicit Dialog(QWidget *parent = 0);
~Dialog();
private:
Ui::Dialog *ui;
};
#endif // DIALOG_H
.cpp我在这里添加的唯一部分是基于另一个线程中的建议的 setWindowFlags(没有帮助)。
#include "dialog.h"
#include "ui_dialog.h"
Dialog::Dialog(QWidget *parent)
: QDialog(parent), ui(new Ui::Dialog)
{
ui->setupUi(this);
setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowTitleHint | Qt::Dialog);
}
Dialog::~Dialog()
{
delete ui;
}
很简单。 如果您尚未进行typedef QDialog Dialog;
则编译器可能不知道
对于"易于理解"的代码,我会使用类的原始名称,因此任何人都可以知道对话框是一个QDialog
对象
相关文章:
- C++为什么尽管我调用了void函数,它却不起作用
- 当我调用对象的方法时,对象的成员会发生变化
- 为什么即使我调用参数化构造函数也会调用默认构造函数?
- 我的 cout 上有一个奇怪的输出,它把答案放在第一位,然后在我调用它的地方放一个奇怪的输出.我该怎么办?
- 参数的混合值,当我调用指针成员函数时
- 当我调用它来解码 Blob 对象中的 png 图像时,"Magick++::readImages"引发警告
- FFMPEG:为什么当我调用av_codec_next()时,我所有的编解码器都没有显示出来
- 当我调用 main 中使用 const 对象的 const 函数时,不断出现错误
- 为什么 C 允许我调用未声明的函数?
- 非常量调用 const 成员函数失败,只读位置C++
- 如何修改类及其方法,让我调用另一个类的必要方法?
- 当我调用lock()时,为什么std :: mutex会引发异常
- 在我调用join()之前,std ::线程运行
- 为什么当我调用告诉它的方法时,我的 deque 不会pop_front?
- 这C++代码如何让我调用参数数量错误的函数
- 为什么C++虚拟调用并不比非虚拟调用慢多少
- 我的函数返回的是打印到控制台,它只会在我调用它时每隔一段时间C++
- 为什么当我调用 print() 函数时我的字符串不会输出?
- gsoap 在我调用的每一秒都会对我的应用程序(用 C 编写)进行分段错误
- 我调用的函数不是通过多态访问子类的函数