首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

connect 的位置,该如何解决

2012-12-15 
connect 的位置主窗体构造函数内QLabel *b new QLabel(this);label 中有信号,窗体有槽,要连接这俩,应该

connect 的位置
主窗体构造函数内
QLabel *b = new QLabel(this);
label 中有信号,窗体有槽,
要连接这俩,应该把connect 放在哪呢?放在窗体构造函数的话提示说窗体无此信号,放在label 构造函数的话变量*b不是还未声明吗?
[最优解释]
 


QLabel *b = new QLabel(this);
connect(B,SIGNAL(clicked()),this,SLOT(youFunction()));


[其他解释]
楼上的正解,一般new出一个对象,就紧接着创建这个对象的信号槽连接
[其他解释]
引用:
C/C++ code1234QLabel *b = new QLabel(this);connect(B,SIGNAL(clicked()),this,SLOT(youFunction()));


弱弱的说一句,QLabel 好像没有clicked() 这个信号吧??
[其他解释]
LZ不会是直接copy代码了吧?QLabel是没有clicked信号的。

[其他解释]
引用:
C/C++ code1234QLabel *b = new QLabel(this);connect(B,SIGNAL(clicked()),this,SLOT(youFunction()));


是这样写的,但是程序运行的时候,有提示:Object::connect :no such signal 我的信号 in widget.cpp
[其他解释]
引用:
引用:C/C++ code1234QLabel *b = new QLabel(this);connect(B,SIGNAL(clicked()),this,SLOT(youFunction()));

是这样写的,但是程序运行的时候,有提示:Object::connect :no such signal 我的信号 in widge……


你不会是把一楼的代码照搬过来吧?

1、信号槽的connect一般是放在对象new出来之后
2、QLabel没有clicked()这个信号

[其他解释]
解决了,不是直接copy 了,是自己定义的,原因是忘了写参数列表~
[其他解释]
 呵呵  随便顺手写的、忘记了...

确实没有这个信号! sorry!  罪过!
[其他解释]
引用:
主窗体构造函数内
QLabel *b = new QLabel(this);
label 中有信号,窗体有槽,
要连接这俩,应该把connect 放在哪呢?放在窗体构造函数的话提示说窗体无此信号,放在label 构造函数的话变量*b不是还未声明吗?

放在主窗体就行,但是你要保证sender正确

热点排行