![]() |
AW: Sendkeys, "Enter" einbauen
@TE: Aus Deinem Code geht nicht hervor, was die RETURN-Simulation machen soll.
Die 2 Zeilen Code brauchen natürlich ein Objekt, das auf die RETURN-Simulation reagiert - siehe Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin caption:= 'B1'; end; procedure TForm1.Button2Click(Sender: TObject); begin Button1.SetFocus; Keybd_Event(VK_RETURN,0,0,0); //Taste drücken Keybd_Event(VK_RETURN,0,KEYEVENTF_KEYUP,0); //Taste loslassen end; |
AW: Sendkeys, "Enter" einbauen
ehrlich gesagt weiß ich das selber nicht genau:)
Ich wollte einfach erstmal einen Text schreiben indem ich Tastendrücke simuliere und wollte auch ein "Return" simulieren können:) Also so wirklich die Idee dahinter hatte ich nicht :| t.roller dein Code hat geklappt wie gesagt, ich habe ihn nur falsch angewendet.. er wurde nie ausgeführt, dort, wo ich ihn als erstes implementiert hatte:). Funktioniert jetzt alles:) Danke an alle:))) |
AW: Sendkeys, "Enter" einbauen
Zitat:
|
AW: Sendkeys, "Enter" einbauen
haentschman wie gesagt, ich wollte einfach mal einen Text schreiben über simulierte Tasten, mehr nicht :-D
Ich gebe einen String vor und die Anzahl der Wiederholungen. die Checkbox macht eben das return, oder eben kein return zischen den Wiederholungen.. beispiel: string: ABC, WDH: 5, checkbox:=True -> ABC ABC ABC ABC ABC
Code:
procedure TForm1.SendKeys(const S: String);
var InputEvents: PInput; I, J: Integer; begin if S = '' then Exit; GetMem(InputEvents, SizeOf(TInput) * (Length(S) * 2)); try J := 0; for I := 1 to Length(S) do begin InputEvents[J].Itype := INPUT_KEYBOARD; InputEvents[J].ki.wVk := 0; InputEvents[J].ki.wScan := Ord(S[I]); InputEvents[J].ki.dwFlags := KEYEVENTF_UNICODE; InputEvents[J].ki.time := 0; InputEvents[J].ki.dwExtraInfo := 0; Inc(J); InputEvents[J].Itype := INPUT_KEYBOARD; InputEvents[J].ki.wVk := 0; InputEvents[J].ki.wScan := Ord(S[I]); InputEvents[J].ki.dwFlags := KEYEVENTF_UNICODE or KEYEVENTF_KEYUP; InputEvents[J].ki.time := 0; InputEvents[J].ki.dwExtraInfo := 0; Inc(J); end; SendInput(J, InputEvents[0], SizeOf(TInput)); if Checkbox1.checked=True then begin Keybd_Event(VK_RETURN, 1, KEYEVENTF_EXTENDEDKEY, 0) ; Keybd_Event(VK_RETURN, 0, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0); end; finally FreeMem(InputEvents); end; end; |
AW: Sendkeys, "Enter" einbauen
Hallo...:P
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz