Qt Designer中的connect问题

lizheng092 2010-03-25 12:27:31
Qt Designer中的connect问题

在采用手动编程的方式编写了一个界面A;Qt Designer中创建了一个界面B;通过界面A中的一个按钮触发进入B界面。现在想在B界面中进行一些操作,比如点击按钮然后响应一些事件。

现在通过在main函数下直接调用B这个界面,可以实现这些响应,但通过A下的按钮打开B界面,就不能实现这些响应了。这是为什么啊?急!请各位高人指教。文件内容如下;

B类的头文件:
#ifndef B_H
#define B_H

#include "stdafx.h"
#include "ui_b.h"

class B : public QWidget ,private Ui::BClass
{
Q_OBJECT

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


public slots:
void test(); // Assistant上介绍的一种方法
// void on_Button1_checked(); //Assistant上介绍的另一种方法


private:
Ui::BClass ui;

};

#endif // B_H

B类的构造函数
B::B(QWidget *parent)
: QWidget(parent)
{

QWidget *w = new QWidget;

ui.setupUi(w);
w->show();
connect(ui.Button1,SIGNAL(clicked()),this,SLOT(test()));
}

B中的槽函数1
void B::test()
{
QMessage::information.....// 最简单的一些代码。
}

B中的槽函数2
void B::on_Button1_checked()
{
QMessage::information.....// 最简单的一些代码。
}

A类中按钮对应的槽函数:
void A::Button2()
{
B w;
}
...全文
257 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lizheng092 2010-03-25
  • 打赏
  • 举报
回复
问题自己已经解决了,呵呵,多谢关心。问题出在信号接收方
lizheng092 2010-03-25
  • 打赏
  • 举报
回复
求助……
  • 打赏
  • 举报
回复
我Designer用得很少,不过应该可以的

大不了自己定义一个槽,只要A->hide(),然后B->show()就ok了

好像以前有看过..应该可以的我记得...

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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