Also: Ich habe die Buttons etwa so angeordnet:
Code:
Press_1 Release_1
Press_2 Release_2
Press_3 Release_3
... ...
Nun habe ich die Handles mit FindWindowEx und WinSpy in ein zweidimensionales Array geladen:
Delphi-Quellcode:
TButtons=array[1..2]of array[1..123]of HWND;
[...]
for J:=1 to 2 do
for I:=1 to 13 do
vButtons[J][I]:=FindWindowEx2(vGUIWindow, 'Button', (I*J));
//Ich hab jetz mal um Speichers willen nur je 13 Buttons erstellt ;)
Und dann wird das bei mir so aufgerufen:
Delphi-Quellcode:
procedure TAU3ControlGUI.PressKey(Input: integer);
begin
PostMessage(vButtons[1][Input], WM_LBUTTONDOWN, 0, 0);
PostMessage(vButtons[1][Input], WM_LBUTTONUP, 0, 0);
end;
Und in eine Schleife gepackt:
Delphi-Quellcode:
for I:=1 to 13 do
begin
PressKey(I);
ReleaseKey(I);
end;
Die Buttons geben nach Klick testweise erstmal ihre Nummer aus. Ausgabe müsste also sein: "1-1-2-2-3-3-4-4-..."
Ist aber folgendermaßen: "1-2-2-4-3-6-4-8-5-10-6-12-7-1-8-3-9-5-10-7-11-9-12-11-13-13"
Was ist da bitte los? Ich denke, die WinSpy-Funktion spinnt irgendwie, weil sonst müsste der Kram doch laufen...
Deswegen wollt ich die Dinger ja erst über ihre Caption kriegen^^
Also, *nochmaldiefrageindenraumwerfaufdassjemanddaraufre agiere*
Wie bekomme ich das
Handle eines Buttons dessen ParentHandle ich kenne, und von dem ich auch weiß, wie er beschriftet ist?
Danke vielmals im Voraus für eine passende, schnelle Antwort oder eine andersartige Lösung meines Problems - beispielsweise indem obenstehender Code nochmal auf Herz und Nieren überprüft wird - möglicherweise ist das ja auch mein Fehler^^