Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Das kommt weniger auf die Windows Version draufan sondern wie Delphi oder die entsprechende Sprache die Controls erzeugt/anlegt.
So wie es aussieht landen die zuletzt erzeugten Objekte zuoberst in der "Z-order" so dass
sie dann von FindWindowEx zuerst gefunden werden.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Auf jeden Fall ist es performanter den Rückgabewert auf 0 zu überprüfen, ansonsten nimmt FindWindowEx bei hwndParent = 0 das Desktop Fenster und es wird somit unnötig nach einem Control gesucht, was auf jener Ebene nicht existiert.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Habe ich auch gedacht, als ich den Satz geschrieben habe. Jedoch wird der 2. Panel seltsamerweise zuerst gefunden. (bei FindWindoEx)
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Du brauchst nur das 2. Control im WinSpy zu markieren und dann klickst du auf "Code erzeugen"
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Hallo
Der WinSpy ist nicht darauf ausgelegt, einen optimalen Source Code zu generieren.
Es ist dem Anwender überlassen, den Code anzupassen.
Das kann ich nicht nachvollziehen. Darum verwendet WinSpy eine Funktion FindWindowEx2
Bei mir wurde der Code bei einem Test-Projekt korrekt erzeugt.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Den WinSpy kannst du von hier herunterladen (Habe ich vor über 4 Jahren programmiert, ist Freeware)
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by toms,
25. Jan 2008
Hallo,
Mit WinSpy habe ich folgenden Code erzeugt:
var
wnd: HWND;
begin
wnd := FindWindow('wxWindowClassNR','VLC media player');
wnd := FindWindowEx(wnd, 0, 'wxWindowClassNR', nil);
wnd := FindWindowEx(wnd, 0, 'wxWindowClassNR', nil);