Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
E-P-S

Anmeldungsdatum: 16.09.2004 Beiträge: 500 Wohnort: Neuruppin
|
Verfasst am: 23.03.2010, 19:53 Titel: Handle eines Gadgets in fremden Fenster ermitteln |
|
|
Hi zusammen, ich hab ne ungewöhnliche Frage.
Ich habe eine fremde Anwendung (trueSpace 6.6). Diese enthält u.a. ein Label in dem Text erscheint wenn man über ein anderes Element mit der Maus "fährt".
Das ganze funktioniert wie eine Statuszeile, jedoch glaube ich nicht das es eine ist, denn der Fensteraufbau von trueSpace ist etwas merkwürdig (siehe Bild)
Meine Frage lautet: Könnte man den Handle dieses Labels (oder auch der Statuszeile) herausfinden um zu erkennen welcher Text darin gerade angezeigt wird?
Hierzu muß ich sagen das ich den Handle des Hauptfensters ermitteln kann, denn bei dem ganzen handelt es sich um die Entwicklung einer Erweiterung, also Plugins, mit Hilfe der tS SDK, welche mir den Handle des Fensters zurück gibt.
Als Beispiel, wie im Bild zu sehen, würde ich gerne wissen wenn der Text "Object Move" erscheint.
Vielen Dank schonmal. _________________ Man kann sich öfter als zweimal im Leben halb tot lachen. |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 23.03.2010, 23:34 Titel: |
|
|
Das sieht nicht unbedingt nach der Win32 API aus. Und falls doch ist die zumindest gethemed...
EnumChildWindows() wäre wohl dein erster Ansatzpunkt. |
|
Nach oben |
|
 |
E-P-S

Anmeldungsdatum: 16.09.2004 Beiträge: 500 Wohnort: Neuruppin
|
Verfasst am: 23.03.2010, 23:41 Titel: |
|
|
Danke, genau das isses
Den Handle hab ich jetzt. Ich kann das Element z.B. verstecken und wieder sichtbar machen (SW_SHOW, SW_HIDE).
Wie kann ich denn nun daraus den Text auslesen?
Ich hab es per SendMessage versucht - in der Annahme es wäre eine StatusBar. Aber schon beim Versuch die Anzahl an Parts zu bekommen erhalte ich immer nur 0. Gleiches beim Versuch die Textlänge und auch Text zu ermitteln.
SendMessage( handle, #SB_GETPARTS, 0, 0 )
Hab ich da irgend nen Denkfehler? _________________ Man kann sich öfter als zweimal im Leben halb tot lachen. |
|
Nach oben |
|
 |
Cherry
Anmeldungsdatum: 20.06.2007 Beiträge: 249
|
Verfasst am: 24.03.2010, 23:16 Titel: |
|
|
Nein. Wenn du die Fensterklasse anschaust, wirst du sehen, dass das was eigenes ist. Properties mit einem Pointer o.ä. gibts da leider auch nicht.
Ohne zu wissen, wie das intern abläuft (und auch dann ist es unschön da undokumentiert - und es ist in späteren Versionen auch anders), wirst du da wahrscheinlich nicht rankommen (ich hab mir extra v6.6 organisiert um das zu testen^^) |
|
Nach oben |
|
 |
E-P-S

Anmeldungsdatum: 16.09.2004 Beiträge: 500 Wohnort: Neuruppin
|
Verfasst am: 24.03.2010, 23:20 Titel: |
|
|
Danke, ihr habt recht. Die Caligari Heinis haben da tatsächlich keine Standard Elemente eingebaut.
Meinen Tests nach sind das alles STATIC Elemente in die direkt hineingezeichnet wird.
Ich hab jetzt eine andere Lösung für mein Problem gefunden.
DANKE _________________ Man kann sich öfter als zweimal im Leben halb tot lachen. |
|
Nach oben |
|
 |
|