Fråga : Klicka en knäppas i en annan applikation

Bra dag alla:)den pröva förmiddagen för

I att simulera en knäppas klickar på en annan ansökningsblankett, har jag figurerat den ut bortsett från en liten snag.

As som understödjaapplikationen är min, och jag har källan för den, fäst kodifierar arbeten. , när emellertid jag överför ”ControlCaption”, som ett tomt stränger, den fungerar inte - jag förstår varför men inte hur man får runt om den. Jag skulle föredrar att inte göra onödiga ändringar till understödjaapplikationen.

My ifrågasätter: hur gör jag, simulerar en knäppas klickar till en TSpeedButton som a) har inget handtag, och b) har inget att förse med text/text endast en avbilda?

Kind Regards
> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
" codeBody " " >Procedure ClickButton (WindowName, WindowCaption för class= " för
" klar "

Svar : Klicka en knäppas i en annan applikation

du kan inte klicka på en knäppas som har inget fönsterhandtag vid denna metod.

Din endast lösning är att simulera en mus klickar på bilda som vet koordinaten av knäppas

Också jag ser inte den behovsuppsättningen dina handtag till 0 som används en gång.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
Tillvägagångssätt ClickSomewhere (WindowName, WindowCaption: PChar; X Y: Heltal);
Var
  hParent: HWND;
Börja
 hParent: = FindWindow (WindowName, WindowCaption);
 om hParent0<> därefter
  Börja
   (hParent) BringWindowToTop;
   Application.ProcessMessages; // inte sure som är användbar
   hParent SendMessage (, BM_CLICK, X, Y);
  Avsluta;
Avsluta;
Andra lösningar  
 
programming4us programming4us