Einzelnen Beitrag anzeigen

Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Control Handle anhand der Caption finden

  Alt 28. Apr 2009, 20:58
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^^
  Mit Zitat antworten Zitat