Entwickler-Ecke

Sonstiges (Delphi) - virtuelle Keys (tastendruck simulieren)


MBK - Mi 26.06.02 17:44
Titel: virtuelle Keys (tastendruck simulieren)
also ich will groß und kleinbuchstaben als tastendruck simulieren.

bis jetzt nutze ich diesen code:

Quelltext
1:
2:
keybd_event(ord('A'),ord('A'),0,0);
keybd_event(ord('A'),ord('A'),KEYEVENTF_KEYUP,0);

das funktionier auch aber er schreibt dann kein großes A sondern ein kleins a. und wenn ich den code dann mal so umändere:

Quelltext
1:
2:
keybd_event(ord('a'),ord('a'),0,0);
keybd_event(ord('a'),ord('a'),KEYEVENTF_KEYUP,0);
dann schreibt der kein a sondern eine 1.

wie kann ich das A in einen virtuellen key umändern der dann ein großes A schreibt und kein kleines oder geht das nur in verbindung mit der shifttaste?

Code-Tags hinzugefügt. Tino


Torsten - Mi 26.06.02 17:48

Moinsen!

Hast Du Dir dazu eventuell mal die Funktionen AnsiUppercase und UpperCase angeschaut?
Eventuell können die helfen.

Grüße

Torsten


Spike - Mi 26.06.02 18:07

hi,
also ich habs vor ner Weile mal so gemacht:


Quelltext
1:
2:
3:
4:
5:
    VKCode := LOWORD(VkKeyScan(Text[i]));
    if Shift then keybd_event(Vk_SHIFT, 0, 0, 0);
    keybd_event(VkCode, 0, 0, 0);
    keybd_event(VkCode, 0, KEYEVENTF_KEYUP, 0);
    if Shift then keybd_event(Vk_SHIFT, 0, KEYEVENTF_KEYUP, 0);


hier ging es allerdings darum bestimmt Zeilen groß zu schreiben. Deswegen die Variable Shift. Wenn sie true ist wird alles groß geschrieben.