gpt4 book ai didi

c++ - QT 从主类中声明 Mainwindow

转载 作者:行者123 更新时间:2023-11-28 00:44:12 26 4
gpt4 key购买 nike

我在 C++ 中有这两个类

图形用户界面.cpp

#include "AL_GUI.h"
#include <QtGui/QApplication>
#include "mainwindow.h"

GUI::GUI() {
}

void GUI::startGUI(){
int c=1;
char *array[10];
char** v = &array[0];
QApplication qa(c,v);
w.show();
qa.exec();
}
void GUI::notifyAlert(){

}

GUI::~GUI() {
// TODO Auto-generated destructor stub
}

图形界面.h

#include <QtGui/QApplication>
#include "mainwindow.h"
#include "mainwindow.h"

#ifndef GUI_H_
#define GUI_H_

class GUI {
public:
GUI();
virtual ~GUI();
void startGUI();
void notifyAlert();

private:
MainWindow w;
};

#endif

但是当我运行这个程序时出现错误:QWidget:必须在 QPaintDevice 之前构造一个 QApplication

如何在 gui.h 中声明 MainWindow w 而不会收到此错误

最佳答案

你不能(好吧,你可以,但你不应该)。 MainWindon 声明就在它应该在的地方。问题是您试图在创建 QApplication 之前创建一个 GUI 对象。

为什么不在创建 GUI 对象的地方创建 QApplication,就在它之前?

关于c++ - QT 从主类中声明 Mainwindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17190694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com