不同类之间怎么用信号和槽通信?
例如在A.cpp中
public: signals:
void mySignal();
然后自己发送信号,
emit mySignal();
B.cpp中
定义槽
public slots:
void rec();
-------------------------------------------------
A *a = new A();
connect(a,SIGNAL(mySignal()),this,SLOT(rec()));
--------------------------------------------------
上面是个人的一些思路,但是最终没有实现通信,求解。 --------------------编程问答-------------------- 1.传入另一个类的指针
2.就是你想的这种方法。
A::A(B* myclass)
{
//第一种
m_myClass = new B;
connect(this,SIGNAL(display()),m_myClass,SLOT(display()));
//第二种
connect(this,SIGNAL(display()),myclass,SLOT(display()));
}
其中m_myClass是类A中的变量B *m_myClass。 --------------------编程问答-------------------- 补充…… 在调用时:
若是第一种方法。
B b;
A A(b); --------------------编程问答-------------------- 知道receiver和sender的指针即可 当sender emit即调用receiver的slot --------------------编程问答--------------------
解释的很贴切! --------------------编程问答-------------------- a.cpp:
B *b=new B(this);
b.cpp:
connect(this,SIGNAL(mySignal()),parentWidget(),SLOT(rec()));
补充:移动开发 , Qt