Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 我的自定义QML给出错误:“quot;无法分配给不存在的属性";_Qt_Plugins_Qml - Fatal编程技术网

Qt 我的自定义QML给出错误:“quot;无法分配给不存在的属性";

Qt 我的自定义QML给出错误:“quot;无法分配给不存在的属性";,qt,plugins,qml,Qt,Plugins,Qml,这是我的.h文件: #ifndef FDR_TCPSOCKET_H #define FDR_TCPSOCKET_H #include <QObject> #include <QTcpSocket> class FDR_TCPSocket : public QObject{ Q_OBJECT public: QTcpSocket* _socket; FDR_TCPSocket(QObject* parent = Q_NULLPTR){

这是我的.h文件:

#ifndef FDR_TCPSOCKET_H
#define FDR_TCPSOCKET_H
#include <QObject>
#include <QTcpSocket>


class FDR_TCPSocket : public QObject{
    Q_OBJECT

public:
    QTcpSocket* _socket;

    FDR_TCPSocket(QObject* parent = Q_NULLPTR){
        // Create the socket object.
        _socket = new QTcpSocket(parent);

        // Add events to the socket.
        addEvents();
    }

    void addEvents(){
        _socket->connect(_socket, &QTcpSocket::connected, [=]{
            emit Connected();
        });
    }

signals:
    void Connected();

public slots:
    // ...
};

#endif // FDR_TCPSOCKET_H
\ifndef FDR\TCPSOCKET\H
#定义FDR\u TCPSOCKET\u H
#包括
#包括
类FDR\u TCPSocket:公共QObject{
Q_对象
公众:
QTcpSocket*_插座;
FDR_TCPSocket(QObject*parent=Q_NULLPTR){
//创建套接字对象。
_套接字=新的QTcpSocket(父级);
//将事件添加到套接字。
addEvents();
}
void addEvents(){
_socket->connect(_socket,&qtcsocket::connected,[=]{
发射连接();
});
}
信号:
空连接();
公众时段:
// ...
};
#endif//FDR\u TCPSOCKET\u H
这是我的QML:

import com.fedartech.qmlsockets 1.0
...
FDR_TCPSocket{
        onConnected: { ... } <<<========== GIVES ERROR
}
import com.fedartech.qmlsockets 1.0
...
FDR_TCPSocket{

连接:{…}哦,我的天哪……简单的回答

我将
Connected()
信号更改为
Connected()
(第一个字母小写)

现在它工作了

qmlRegisterType<FDR_TCPSocket>("com.fedartech.qmlsockets", 1, 0, "FDR_TCPSocket");