Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Textfeld eines externen Programms ansprechen? (https://www.delphipraxis.net/26273-textfeld-eines-externen-programms-ansprechen.html)

emploi 21. Jul 2004 11:03


Textfeld eines externen Programms ansprechen?
 
Hi leute.

Hab jetzt mal ein paar stündchen hier im Forum geforscht und unzählige threads zum
thema "ansprechen externer Programme" gelesen. Hab auch mal mit dem Prog X-Spy von
Motzi rumgespielt. Wird sehr sehr geiles Programm, Respekt! Doch all das nachlesen
hat mir glaub ich meine Frage nicht beantwortet. Man kann Buttons oder Edit Felder
oder Radiobuttons und und und ansprechen aber kann man auch ein stink normales
TextFeld sprich Label ansprechen? X-Spy zeigt mir da garkeinen speziellen handle
zu an - existiert der überhaupt?

Wäre sehr cool wenn ihr mich da aufklären könntet!
Mit Links zum selber lesen wäre ich auch sehr zufrieden! Hab aber
bisher nicht dazu gefunden :(

MFG

emploi

Luckie 21. Jul 2004 14:30

Re: Textfeld eines externen Programms ansprechen?
 
Handelt es sich bei der Fensterklasse wirklich im TLabel, dann wirst du Pech haben. TLabel ist von TGraphicControl und nicht vom TWinControl abgeleitet und hat somit kein eigenes Handle. Aber wie du schon festgestellt haben wirst, brauchst du genau dieses.

emploi 22. Jul 2004 00:33

Re: Textfeld eines externen Programms ansprechen?
 
Hi Luckie!

Danke für die schnelle Antwort. Hab sowas schon, ohne es genauer zu wissen,
vermutet :( - dachte das es da vielleicht nen speziellen ich nenn es mal
API Trick gibt ;).

Zu deiner Frage es muss sich nicht um ein Label handeln. Habe da noch eine Frage
die ich aber noch nicht ausreichend recherchiert habe. Und zwar zeigt mir X-Spy
als Klasse eines "Textfeldes" (<- bezeichne ich mal einfach so, kann aber evtl auch für
verschiedene Darstellungsformen gelten - k.a.) Static an. was genau bedeutet das?
scheint irgendwas "statisches" zu sein. Kann ich denn darauf zugreifen, selbst
wenn es keinen eindeutigen Bezeicher wie z.b. Window Name hat? Da könnte ich ja sonst
anhand des Textes der darin enthalten ist irgendwelche vergleiche machen!

Wäre supi wenn du mir da weiterhelfen könntest!

mfg

emploi

Luckie 22. Jul 2004 00:50

Re: Textfeld eines externen Programms ansprechen?
 
STATIC ist die Fensterklasse der WinAPI für eine Element das dem Label der VCL entspricht. Gibt es auch als VCL Kapselung: TStatictext. Und wenn du kein Handle hast, kein Zugriff - no way.

scp 22. Jul 2004 00:51

Re: Textfeld eines externen Programms ansprechen?
 
Zitat:

Zitat von emploi
...Static an. was genau bedeutet das?
scheint irgendwas "statisches" zu sein. Kann ich denn darauf zugreifen, selbst
wenn es keinen eindeutigen Bezeicher wie z.b. Window Name hat? Da könnte ich ja sonst
anhand des Textes der darin enthalten ist irgendwelche vergleiche machen!

Bei Static hast du glück. Das ist sozusagen die Standardklasse für Textfelder/Labels in der Windows API, diese haben auch ein Handle.
Der "Window Name" ist in dem Fall auch der angezeigte Text, du kannst also mit WM_GETTEXT und WM_SETTEXT arbeiten.

EDIT: Ups, tu langsam :)

emploi 22. Jul 2004 11:40

Re: Textfeld eines externen Programms ansprechen?
 
Supi!

Riesen Dank für die Antworten. Werd mich dann mal dranbegeben und schauen obs klappt!

bis bald :)

emploi


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz