标题:大神们来帮忙了,想了2天没有想出来,Qt的一个问题
作者:a281574516
日期:2016-07-26 14:53
内容:
A是界面类是一个虚拟键盘B类里创建了A的实例(a =new A),现在有个C类,想实现的是,A在B中创建的实例点击了enter按钮是,关联到C的槽函数。
B和C都在Main函数里面创建了实例。
因为connect这个是在C的cpp文件里,怎么才能把B中创建的A实例对象直接用到C类的cpp中
#1 [firebolt 07-26 22:23]
创建C类的时候把A类的指针作为参数传递给C类就可以了吧。
#2 [leonchiong 07-27 09:04]
B和C都在Main函数里面创建了实例
根据上面这句话, 可以在B中写一个返回A指针的函数,然后直接在main里连接A和C的信号槽,
#3 [一去丶二三里 07-27 09:14]
如果不频繁操作A不建议在B类中开启A类的接口
通常使用“中介”的方式
connect(A, SIGNAL(clickedA())), B, SIGNAL(clickedB())); A - Bsignal to signal
connect(B, SIGNAL(clickedB())), C, SIGNAL(clickedC())); B - C signal to slot
相当于:A - C = (A - B) + (B - C)B起到一个桥梁的作用