Próbuję napisać aplikację pulpitu wielodotykowego. Mam aplikację opartą na QML i teraz próbuję przeciągnąć więcej niż jeden element QML w tym samym czasie.Tworzenie wielodotykowej aplikacji Qt 5.1
Próbowałem użyć MultiPointTouchArea
, ale to nie zadziała. Dostałem 2 elementy. Na przykład 2 zdjęcia, które powinny być przeciągane przez dwie różne osoby w tym samym czasie.
Po zdefiniowaniu prostokąta zawierającego MultiPointTouchArea
i połączyłem jeden touchPoint
z każdym zdjęciem, pierwsze zdarzenie dotykowe przenosi pierwsze zdjęcie, a drugie zdarzenie dotykowe przenosi drugie zdjęcie.
jak w tym przykładzie kodu:
Rectangle {
width: 400; height: 400
MultiPointTouchArea {
anchors.fill: parent
touchPoints: [
TouchPoint { id: point1 },
TouchPoint { id: point2 }
]
}
Rectangle {
width: 30; height: 30
color: "green"
x: point1.x
y: point1.y
}
Rectangle {
width: 30; height: 30
color: "yellow"
x: point2.x
y: point2.y
}
}
To nie jest to, czego szukam. Chcę, aby się poruszały, jeśli są dotykane i przeciągane, zarówno w tym samym czasie, bez przeszkadzania sobie nawzajem, jak i bez rozkazów dotyku. Czy to możliwe w qml? Czy muszę kodować funkcję C++?
Mam nadzieję, że rozumiesz mój problem.
Jeśli mógłbyś dodać przykład minimalnego kodu QML, byłaby to świetna odpowiedź. – hyde