error: no member named 'isNull' in 'QMetaObject::Connection'
时间: 2023-07-29 18:07:46 浏览: 241
Qt编写的自定义控件属性设计器
这个错误通常在使用Qt信号和槽连接时出现。它意味着你正在尝试使用isNull()函数来检查连接是否存在,但是QMetaObject::Connection类型并没有定义isNull()函数。
为了解决这个问题,你可以尝试使用QMetaObject::Connection的静态函数,如下所示:
```c++
if (connection == QMetaObject::Connection()) {
// 连接不存在
}
```
或者你也可以使用一个标志变量来跟踪连接是否存在:
```c++
bool isConnected = false;
QObject::connect(sender, &Sender::signal, receiver, &Receiver::slot,
Qt::ConnectionType::DirectConnection,
[&isConnected]() { isConnected = true; });
```
后续你可以使用isConnected布尔值来检查连接是否存在。
阅读全文