• 3693阅读
  • 3回复

[提问]大神们来帮忙了,想了2天没有想出来,Qt的一个问题 [复制链接]

上一主题 下一主题
离线a281574516
 

只看楼主 倒序阅读 楼主  发表于: 2016-07-26
A是界面类是一个虚拟键盘  B类里创建了A的实例(a =new A),现在有个C类,想实现的是,A在B中创建的实例点击了enter按钮是,关联到C的槽函数。
B和C都在Main函数里面创建了实例。
因为connect这个是在C的cpp文件里,怎么才能把B中创建的A实例对象直接用到C类的cpp中
离线firebolt

只看该作者 1楼 发表于: 2016-07-26
创建C类的时候把A类的指针作为参数传递给C类就可以了吧。
离线leonchiong

只看该作者 2楼 发表于: 2016-07-27
B和C都在Main函数里面创建了实例

根据上面这句话, 可以在B中写一个返回A指针的函数,然后直接在main里连接A和C的信号槽,

只看该作者 3楼 发表于: 2016-07-27
如果不频繁操作A不建议在B类中开启A类的接口

通常使用“中介”的方式

connect(A, SIGNAL(clickedA())), B, SIGNAL(clickedB())); A - B  signal to signal
connect(B, SIGNAL(clickedB())), C, SIGNAL(clickedC())); B - C signal to slot

相当于:A - C = (A - B) + (B - C)  B起到一个桥梁的作用
博客地址:https://waleon.blog.csdn.net
微信公众号:高效程序员
QQ 群:242790253
微信群:加微信(iwaleon),邀请入群。

承接各种 C++/Qt/QML 项目,专业的团队,一流的服务,不二的选择!
快速回复
限100 字节
 
上一个 下一个