|
| Keypress Fra : Carsten Bager |
Dato : 28-02-02 10:14 |
|
Jeg har brug for at kunne sende bogstaver til
Windows så mit program tror at der rent faktisk
er trykket på keyboardet.
Er det muligt og er der nogle der ved hvordan
Carsten
| |
Finn Bindeballe (28-02-2002)
| Kommentar Fra : Finn Bindeballe |
Dato : 28-02-02 12:04 |
| | |
Olav M.J. Christians~ (28-02-2002)
| Kommentar Fra : Olav M.J. Christians~ |
Dato : 28-02-02 20:57 |
|
"Carsten Bager" <cgb@beas.dk> skrev i en meddelelse
news:1103_1014887617@news.inet.tele.dk...
>
> Jeg har brug for at kunne sende bogstaver til
> Windows så mit program tror at der rent faktisk
> er trykket på keyboardet.
> Er det muligt og er der nogle der ved hvordan
Det er faktisk ret simpelt:
1. Lav USES på shellapi
2. Lav evt. en variabel: lpKeyState: TKeyboardState; (til status på shift
m.v.)
3. Brug følgende kode for at nedtrykke en tast:
keybd_event(ord('A'),0,0,0); // nedtrykker et 'A'
keybd_event(ord('A'),0,KEYEVENTF_KEYUP,0); // løfter tasten igen
For specielle taster såsom cursor op kan du bruge følgende:
keybd_event(vk_up,0,0,0);
keybd_event(vk_up,0,KEYEVENTF_KEYUP,0);
Afhængig af hvor og hvordan din kode fungerer kan det være praktisk med
application.processmessages ind imellem.....
Hvis du skal sende tastetryk til andre programmer skal du lige huske at
sætte fokus først (jeg har kun anvendt denne metode med Delphi-programmer).
M.v.h.
Olav
| |
Carsten Bager (02-03-2002)
| Kommentar Fra : Carsten Bager |
Dato : 02-03-02 19:20 |
|
Olav M.J. Christiansen wrote:
>"Carsten Bager" <cgb@beas.dk> skrev i en meddelelse
>news:1103_1014887617@news.inet.tele.dk...
>
>>Jeg har brug for at kunne sende bogstaver til
>>Windows så mit program tror at der rent faktisk
>>er trykket på keyboardet.
>>Er det muligt og er der nogle der ved hvordan
>>
>
>Det er faktisk ret simpelt:
>
>1. Lav USES på shellapi
>2. Lav evt. en variabel: lpKeyState: TKeyboardState; (til status på shift
>m.v.)
>3. Brug følgende kode for at nedtrykke en tast:
>
>keybd_event(ord('A'),0,0,0); // nedtrykker et 'A'
>keybd_event(ord('A'),0,KEYEVENTF_KEYUP,0); // løfter tasten igen
>
>For specielle taster såsom cursor op kan du bruge følgende:
>
>keybd_event(vk_up,0,0,0);
>keybd_event(vk_up,0,KEYEVENTF_KEYUP,0);
>
>Afhængig af hvor og hvordan din kode fungerer kan det være praktisk med
>application.processmessages ind imellem.....
>
>Hvis du skal sende tastetryk til andre programmer skal du lige huske at
>sætte fokus først (jeg har kun anvendt denne metode med Delphi-programmer).
>
>M.v.h.
>Olav
>
>
>
Tak - det virker bare
Carsten
| |
|
|