Коннект не работает

c++ qt bluetooth connect

93 просмотра

1 ответ

В моей программе при подключении к локальному адресу Bluetooth класс QBluetoothSocket излучает сигнал connected (), поэтому я ловлю его в конструкторе и вызываю информационный слот, в котором говорится, что соединение установлено. Но я не знаю почему, информативный слот невидим.
Надеюсь, с кодом это легче понять.

QBluetoothSocket socket;
connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

и ошибка:

C:\Qt_Projects\A_for_w8\A_for_w8\widget.cpp:19: error: no matching function for call to 'Widget::connect(QBluetoothSocket&, void (QBluetoothSocket::*)(), Widget*, void (Widget::*)())'
      connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
                                                                                  ^

Я порвал себя в слезах, но на самом деле понятия не имею, почему .. Надеюсь, вы можете помочь.

Автор: John Источник Размещён: 08.11.2019 11:01

Ответы (1)


0 плюса

Решение

Ты можешь сделать это:

QBluetoothSocket *socket = new QBluetoothSocket();
connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

или же:

QBluetoothSocket socket;
connect(&socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

Вы можете найти больше информации на документах

Автор: sebter Размещён: 20.08.2016 01:58
Вопросы из категории :
32x32