关于一个qt界面的按钮触发另一个界面的问题,急需帮助,谢谢!!

a6391082 2012-05-31 09:26:07
各位前辈,我是才开始学习在vs2008中使用qt写界面,我现在要坐的是,点击主界面的一个按键,打开另外一个界面,我的主界面的代码facerecog.cpp:
FaceRecog::FaceRecog(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);
connect(ui.pushButton_5, SIGNAL(clicked()), this, SLOT(myslot()));
}

FaceRecog::~FaceRecog()
{

}

void FaceRecog::myslot()
{
QLabel *label = new QLabel("Hello");
label->show();
qDebug( "Hello");
hello->show();
}

其中的hello是欢迎界面,我的facerecog.h是:
#include <QtGui/QMainWindow>
#include "ui_facerecog.h"
#include "hello.h"

class Hello;

class FaceRecog : public QMainWindow
{
Q_OBJECT

public:
FaceRecog(QWidget *parent = 0, Qt::WFlags flags = 0);
~FaceRecog();

private:
Ui::FaceRecogClass ui;
Hello *hello;

public slots:
void myslot();
};

"hello.h"是:

#include <QtGui/QMainWindow>
#include "ui_hello.h"

namespace Ui {
class Hello;
}

class Hello : public QDialog
{
Q_OBJECT

public:
Hello(QWidget *parent = 0);
~Hello();

//private:
Ui::Hello *ui;

};

#endif // HELLO_H
这样可以编译通过,但是运行的时候出现这样的问题:
FaceRecog.exe 中的 0x650d1311 (QtGuid4.dll) 处最可能的异常: 0xC0000005: 读取位置 0x8b55ffb7 时发生访问冲突
FaceRecog.exe 中的 0x650d1311 (QtGuid4.dll) 处未处理的异常: 0xC0000005: 读取位置 0x8b55ffb7 时发生访问冲突

然后程序中断在qwidget.h的下面位置
inline void show() { setVisible(true); }
请求各位帮忙,先谢谢了
...全文
103 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧