3
QML로 신호를 받았는데 C++로 정의 된 슬롯에 연결하고 싶습니다. 그러나 내 코드가 실패하고 내가 오류 메시지가 표시됨 : 여기 QML에서 C++ 슬롯으로의 신호가 QML 신호를 찾을 수 없습니다.
는 C++ 코드입니다 : 여기QObject::connect: No such signal QDeclarativeContext::sent() in ../qt_cpp/mainwindow.cpp:66
message_reading test;
QDeclarativeView tempview;
tempview.setSource(QUrl("qrc:/qml/media_screen.qml"));
QObject *item = tempview.rootContext();
QObject::connect(item, SIGNAL(sent()),
&test, SLOT(readMediaJSONDatabase(QString&)));
그리고 것은 QML 코드 조각입니다 :
Image {
id: bluetooth
source: "images_mediahub/footer_icons/bluetooth_normal.png"
signal sent(string msg)
MouseArea {
anchors.fill: parent
onClicked: {
bluetooth.sent(Test.medialibrarydb.toString())
info_load.source="./bluetooth.qml"
}
}
}
아니요, 거기에 SIGNAL (보낸 (QString)) 유형을 추가하려고 시도했지만 작동하지 않습니다. 동일한 오류 메시지를보고 BTW, 성공을 컴파일하지만 응용 프로그램 창을 열 때이 오류 메시지를 반환합니다. – zero
아, 죄송합니다. 이제 컨텍스트에 연결하려고합니다. 원하는 컨텍스트가 아닙니다. 답변을 업데이트합니다. 어쨌든 –
감사합니다. 나는 새로운 업데이트를 받았지만 여전히 이것을 배웠다. – zero