找回密码
 立即注册
收起左侧

信号和槽的问题

4
回复
7405
查看
[复制链接]
累计签到:83 天
连续签到:1 天
来源: 2016-1-20 16:09:11 显示全部楼层 |阅读模式
2Qter豆
代码如下,要实现点击A界面转到槽函数打开界面B,并发射信号send();
B界面接到send()后,转到槽函数receve(),把lable设为“OK”



附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

1、先发射的信号再创建的form,信号已经发射出去了,它怎么收到。 2、先创建的MainWindow,然后在其中创建了Form,然后在Form中又创建了MainWidow,只是这个MainWindow与最开始那个不是同一个实例啊,所以你Form中的信号槽关联跟第一个MainWindow没有关系,信号和槽当然也连不上了。 通过代码可以发现思路很混乱,没有搞清楚基本概念。其实正确的流程应该是: 在main()函数中创建MainWindow,在MainWindow的构建函数中创建Form ...
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2016-1-20 16:09:12 显示全部楼层
1、先发射的信号再创建的form,信号已经发射出去了,它怎么收到。

2、先创建的MainWindow,然后在其中创建了Form,然后在Form中又创建了MainWidow,只是这个MainWindow与最开始那个不是同一个实例啊,所以你Form中的信号槽关联跟第一个MainWindow没有关系,信号和槽当然也连不上了。

通过代码可以发现思路很混乱,没有搞清楚基本概念。其实正确的流程应该是:

在main()函数中创建MainWindow,在MainWindow的构建函数中创建Form,然后进行信号槽关联,在button的on_pushButton_clicked()里面先显示Form,然后发送信号。
回复

使用道具 举报

累计签到:83 天
连续签到:1 天
2016-1-22 09:04:35 显示全部楼层
yafeilinux 发表于 2016-1-20 16:09
1、先发射的信号再创建的form,信号已经发射出去了,它怎么收到。

2、先创建的MainWindow,然后在其中创建 ...

这么说,发信号和收信号必须得同时存在喽。信号并没有延时等待的过程被
回复

使用道具 举报

累计签到:83 天
连续签到:1 天
2016-1-22 09:13:24 显示全部楼层
who_am_i_2015 发表于 2016-1-22 09:04
这么说,发信号和收信号必须得同时存在喽。信号并没有延时等待的过程被 ...

那那个信号关联也在mainwindow的构造函数里么?
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2016-1-25 17:07:16 显示全部楼层
who_am_i_2015 发表于 2016-1-22 09:13
那那个信号关联也在mainwindow的构造函数里么?

恩。自己试试吧。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了