Autor Beitrag
Gewuerzgurke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 152

Win XP
Lazarus
BeitragVerfasst: Sa 01.11.08 11:16 
Ich hoffe mal, ich bin hier in der richtigen Ecke gelandet.

Ich suche eine Methode, um einen Tasten - oder Tausklick zu simulieren, also so, dass duch das Aufrufen des Befehls zum Beispiel das Drücken der Leertaste simuliert wird und der Editor, wenn er gerade geöffnet ist, dann ein Leerzeichen schreibt.

Vermutlich gibt es zu diesem Thema schon Beiträge, aber ich weiss nicht, wonach ich suchen soll.
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 01.11.08 11:27 
Du kannst das entweder per SendMessage machen oder per keybd_event bzw. mouse_event. Nun hast Du auch ein paar Suchbegriffe ;)
DelphiMarkus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 303

OpenSuSE
Delphi 2009 Pro., Lazarus
BeitragVerfasst: Sa 01.11.08 11:28 
Hallo!

Ich würde es mal mit "Tastendruck" versuchen. Da konnen schon einige passende Ergebnisse raus. Such einfach mal. Vielleicht findest du auch was mit "Tastendruch simulieren"
Gewuerzgurke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 152

Win XP
Lazarus
BeitragVerfasst: Sa 01.11.08 12:02 
Hallo, ich konnte gerade nicht antworten...

Hab' das Ganze eben ausprobiert, aber vielleicht war die Idee mit dem Timer, der 100 Mal pro Sekunde mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); aufruft doch nicht so genial :D .

Zum Simulieren eines Leertastendrucks verwende ich jetzt keybd_event(VK_SPACE,0,0,0);. Sogar Programme, die DirectInput verwenden "fallen darauf herein".

Danke.
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 01.11.08 12:13 
Vergiss aber nicht, die Taste auch wieder "loszulassen".
Gewuerzgurke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 152

Win XP
Lazarus
BeitragVerfasst: Sa 01.11.08 13:58 
Wird sie denn das nicht schon bim Aufruf von keybd_event(VK_SPACE,0,0,0);?
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 01.11.08 14:04 
Nein, erst bei Aufruf von keybd_event(VK_SPACE,0,KEYEVENTF_KEYUP,0);
Gewuerzgurke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 152

Win XP
Lazarus
BeitragVerfasst: Sa 01.11.08 14:36 
Echt? Ich dachte, wenn man 0 einsetzt, wird die Taste simuliert gedrückt und wieder losgelassen. Erst wenn man KEYEVENTF_KEYDOWN, oder so eisetzt, wird nur ein Drücken der Taste simuliert. Zumindest müsste der Editor doch, wenn die Taste NUR gedrückt wurde, nach einer Sekunde anfangen, ganz viele Leerzeichen zu schreiben - oder? Bei mir ist dies aber nicht so.