Hallo Klaus!
Post by Klaus MayerIuSpy sagt, die GoogleEarth - Controls wären von der QTool / QWidget-
Klasse. Vermutlich liegt
Was genau willst Du machen? Ich weiss, dass so Dienste wie Google Earth auch
Interfaces bieten. Google Earth kenne ich nun nicht, aber dieses MS Mappoint
oder wie sich der Serverdienst auch immer nennen mag, hat ein Schnitstelle,
die einfach zu nutzen ist (Kenne ich aber auch nur, weil im WCF Self-Paced
Training Kit der Service als Beispiel hergenommen wird!) Also evtl. kann man
auch einen anderen Lösungsweg finden, wenn das mit dem Auslesen nicht
funktionieren sollte ...
Post by Klaus Mayerdort das Problem. (Und sicherlich auch darin, das ich zu Anfang
fälschlicherweise von GoogleMaps gesprochen habe).
Hat vllt. noch jemand eine Idee???
Nunja, jetzt wissen wir, dass es sich um eine Applikation handelt, die auf
QT basiert.
Ein SDK für Windows gibt es z.B. unter:
http://qt.nokia.com/downloads/sdk-windows-cpp
Dokumentation unter http://doc.qt.nokia.com/4.6/
Generell ist QT eine Lib, die es ermöglicht eine Applikation für viele
unterschiedliche Ziele zu schreiben. Dadurch ist es leider so, dass die
Windows Basics hier nicht wirklich zwingend zum tragen kommen. Wenn ich das
Gelesene richtig verstanden habe, dann können die Widgets ganz intern
verwaltet werden ohne ein Windows Handle zu bekommen (was aber bei der
Google Applikation nicht der Fall zu sein scheit. Du hast ja ein Windows
Handle bei den Controls).
Ich habe mir dieses SDK mal herunter geladen und mir mal den Code etwas
angetan.
Vom Prinzip her ist es einfach so aufgebaut, dass die QApplication die
Windows events verarbeitet und als QEvents and die jeweiligen Empfänger
zurück gibt. Die Widgets selbst empfangen keine Windows Messages. (Nach
meinem Verständnis ist dies bei Windows anders. Hier verarbeitet jedes
"Window" die Messages und gibt diese bei "Nichtbearbeitung halt einfach
weiter).
Was es aber auch gibt (in einem Bereich, der wohl von einer Art Designer
erstellt wird) sind so Funktionen qt_metacall. Die sehen selbst recht
vielversprechend aus. Nur eben fehlt mir der Überblick um die
Verhaltensweise wirklich zu verstehen oder gar zu wissen, wie man da
testweise etwas aufrufen könnte. (Und es kann auch sein, dass ich komplett
daneben liege und das hier in eine ganz falsche Richtung geht!)
Dies wäre z.B. in qt\src\gui\tmp\moc\debug_shared\moc_qlineedit.cpp die
funktion int QLineEdit::qt_metacall(QMetaObject::Call _c, int _id, void
**_a).
Was mich aber stört ist, dass sofort der call an die Basisklasse
weitergegeben wird. Denn wenn _c == QMetaObject::ReadProperty und _id == 1
dann wird über _a[0] der Inhald der ListBox zurückgegeben.... Es könnte also
sein, dass es tatsächlich möglich ist und ich da irgendwas gesehen habe ...
An der Stelle streiche ich aber jetzt die Segel, denn mit QT und C++ möchte
ich nichts (mehr) am Hut haben. Aber vielleicht kann man hier ja mal QT
Spezialisten fragen, was so möglich ist, sprich: Die Frage in ein anderes
Forum tragen. Denn von C# ist es ja mitlerweile abgekoppelt hin zu einer
Frage: kann man mit einer Windows Message so ein QT Widget auslesen oder
nicht.
Ich fürchte, dass ich Dir nicht mehr helfen kann. Solltest Du eine Lösung
finden, dann würde mich das aber auch sehr interessieren.
Mit den besten Grüßen,
Konrad