У меня есть элемент MouseArea. Я хочу передать « onpressed », « ontelelured » и « onpositionChanged » в бэкэнд -стороне, которые я пытаюсь написать в C ++. На самом деле я хочу это для чистого и простого кода. Я могу делать все, что хочу, написав в QML. Я получаю ошибку, например: < /p>
Код: Выделить всё
qrc:/main.qml:58: Error: Unknown method parameter type: Qt::MouseButton
< /code>
my qml script: < /p>
.
.
Item{
id: item
anchors.fill: parent
Viewer{
id: viewer
}
MouseArea{
id: viewerMouseArea
anchors.fill: parent
hoverEnabled: true
acceptedButtons: Qt.RightButton | Qt.LeftButton | Qt.MiddleButton
onPressed: {
//console.log("Mouse buttons in mouse area pressed.");
viewer.mousePressEvent(mouseX, mouseY, mouse.button);
}
onReleased:{
//console.log("Mouse buttons in mouse area released.")
viewer.mouseReleaseEvent(mouseX, mouseY, mouse.button);
}
onPositionChanged:{
//console.log("Position of cursor in mouse area changed.")
//viewer.mouseMoveEvent(x, mouseY);
}
}
}
.
.
< /code>
My C ++ Backend Code: < /p>
.
.
void Viewer::mousePressEvent(double x, double y, Qt::MouseButton button) {
qDebug()
Подробнее здесь: [url]https://stackoverflow.com/questions/71508298/access-mouse-button-variable-in-qml[/url]
Мобильная версия