QObject::connect的问题

bug1986 2010-10-18 11:06:02
程序编译运行后log信息中显示QObject::connect: Cannot connect (null)::authorizationRequested(QString,
QString,QString,qulonglong,int) to BluetoothFileReceiveDialogPlugin::agentRequestedAuthorization(QString,QString,QString,
qulonglong,int),我的信号和槽已经通过connect链接上了


请问都有什么原因能造成这类问题的出现呢??
...全文
1060 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
bug1986 2010-10-19
  • 打赏
  • 举报
回复
搞定了,是我测试流程的问题,connect没有问题
chinoistzc 2010-10-19
  • 打赏
  • 举报
回复
null 应该是空指针的吧。。。。
dbzhang800 2010-10-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 bug1986 的回复:]

用if判断的,跟你的方法一样,而且在别的函数中这个指针已经能够成功调用其他的函数了,并且没有被delete过,connect链接上的意思是:在构造函数中已经通过QObject::connect将信号和槽链接起来了
[/Quote]
汗,我给你的是产生你看到的警告的Qt源码。不是个人代码。

检查connect是否成功的方式是检查 connect 的返回值!!(原则上所有connect语句都必须检查返回值)
(比如你这个情况,参数检查失败,返回的肯定是false)
bug1986 2010-10-18
  • 打赏
  • 举报
回复
用if判断的,跟你的方法一样,而且在别的函数中这个指针已经能够成功调用其他的函数了,并且没有被delete过,connect链接上的意思是:在构造函数中已经通过QObject::connect将信号和槽链接起来了
dbzhang800 2010-10-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bug1986 的回复:]

不是,已经查过了,还有吗??
[/Quote]
据我所知,没有了。

http://hi.baidu.com/cyclone/blog/item/31748a8221120c9ff603a6e2.html
if (sender == 0 || receiver == 0 || signal == 0 || method == 0) 
{
qWarning("QObject::connect: Cannot connect %s::%s to %s::%s",
sender ? sender->metaObject()->className() : "(null)",
(signal && *signal) ? signal+1 : "(null)",
receiver ? receiver->metaObject()->className() : "(null)",
(method && *method) ? method+1 : "(null)");
return false;
}


不妨介绍一下你怎么检查的,另外,"我的信号和槽已经通过connect链接上了"是什么意思?难道你执行了不止一次 connect ?
bug1986 2010-10-18
  • 打赏
  • 举报
回复
不是,已经查过了,还有吗??
dbzhang800 2010-10-18
  • 打赏
  • 举报
回复
(null)
检查是不是空指针先
wxj120bw 2010-10-18
  • 打赏
  • 举报
回复
信号authorizationRequested是何时出发的 在类内还是类外触发。
bug1986 2010-10-18
  • 打赏
  • 举报
回复
没有啊,关于和它有关的connect就有一次调用
dbzhang800 2010-10-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 bug1986 的回复:]

connect返回值正常
[/Quote]
这是不是说明:你程序中多次调用了connect,而出错的和你检查的并不是同一个?
bug1986 2010-10-18
  • 打赏
  • 举报
回复
connect返回值正常

16,203

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧