当前位置:编程学习 > wap >>

Qt信号槽 不能连接槽出现Object::connect: No such signal的错误

有个想法想去实现,思路如下,
定义一个新类:
test.h 代码如下

#include <QWidget>

class Test : public QWidget
{
    Q_OBJECT
public:
    explicit Test(QWidget *parent = 0);
    
signals:
    // 声明信号 mySignal() 
    void mySignal();
public slots:
    // 声明槽函数 mySlot()
    void mySlot();    
};

test.cpp 实现类

#include "test.h"
#include "qdebug.h"
test::test(QWidget *parent) :
    QWidget(parent)
{
}
void test::mySlot()
{
    qDebug()<<"111";
}




现在我想在对话框窗体类中响应test里面的mySlot方法
dialog.cpp代码如下:

#include "dialog.h"
#include "ui_dialog.h"

Dialog::Dialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Dialog)
{
    ui->setupUi(this);
    test* tests;
    tests = new test(this);
    connect(ui->label,SIGNAL(???),this,SLOT(??));   
}


即直接响应 test类里面的mySlot方法。。

test类估计写的也是不对的。。

请指教。。

谢谢 --------------------编程问答-------------------- connect里面显示的字符不对,很多??...重新贴一下呢。 --------------------编程问答-------------------- ui->label 里面没有你那个信号~

不太知道你的逻辑
Test *test = new xxx
connect(text, SIGNAL(mySignal()), test, SLOT(mySlot()));

--------------------编程问答-------------------- 你的ui->label里的什么事件要响应呢?你想要响应ui->label还是那个test类哦,难道是响应test类里的label? --------------------编程问答-------------------- 看看是不是笔误了 --------------------编程问答-------------------- 建立楼主多看看关于Qt下面的信号与槽,而且Qt5之后对信号槽做了好多功能扩展
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,