2013-02-05 15 views
15

Aktualnie przesyłam aplikację z Qt 4 do Qt 5 i napotykam na pewne problemy z elementem QML w wersji WebView. Mogę z powodzeniem załadować stronę Google Maps do WebView, jednak strona odpowiada tylko na pojedyncze lub podwójne kliknięcia; próba kliknięcia i przeciągnięcia widoku mapy, aby przesunąć widoczny obszar, nie ma żadnego efektu.WebView Mapy Google panoramowanie/przeciąganie w Qt5

Poprzednio, używając wersji Qt 4 mojego kodu, użyłem właściwości WebView "pressGrabTime: 0" i sfałszowałem klienta użytkownika w celu osiągnięcia funkcji przeciągania po kliknięciu.

Zostałem skierowany do kodu źródłowego dla przykładu MiniBrowser dostarczonego z Qt 5, który wydaje się generować fałszywe zdarzenia dotykowe, aby umożliwić wymaganą funkcjonalność. Jednak przykładowy kod wykorzystuje wiele prywatnych frameworków, które chciałbym uniknąć, aby nie musieć włączać się do mojego własnego kodu.

Czy ktoś może rzucić nieco światła na to, dlaczego element WebView nie reaguje na zdarzenia typu "kliknij, przeciągnij" i zasugerować sposób przezwyciężenia tego?

Odpowiedz

0

Nie mogę odpowiedzieć na twoje pytanie, ale może dam ci inne rozwiązanie twojego problemu.

Mapy Google przedstawiają kafelki mapy w oparciu o długi/mały poziom powiększenia w zakresie &, może można przesłać żądanie poboczne do sąsiadujących kafelków i połączyć je w żądany obraz.

Sprawdź tangogps/foxtrotgps, to jest open source, dzięki czemu można zobaczyć, co zrobili, aby płytki mapy Google działało z oprogramowaniem.