AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tastendruck bemerken

Ein Thema von Yoda2003 · begonnen am 17. Nov 2008 · letzter Beitrag vom 18. Nov 2008
Antwort Antwort
Yoda2003

Registriert seit: 2. Apr 2007
16 Beiträge
 
Delphi 7 Enterprise
 
#1

Tastendruck bemerken

  Alt 17. Nov 2008, 20:48
Hallo,

ich habe vor, bzw. ist es sogar schon gelungen, einen Trainer für Spiele zu erstellen.
Das aber nur nebenbei.

Mein einziges Problem besteht eigetnlich nur noch darin, dass dieser "Trainer" im Hintergrund laufen soll und erst auf Tastendruck (z.B. nach dem Drücken der Taste F1) eine bestimmte Funktion ausführen soll.

Das Problem ist, dass das Programm nicht immer im Vordergrund läuft.

Wie bekomm ich das hin?

Eine Möglichkeit sind ja bekanntlich Hooks. Aber dazu bräuchte ich ja immer eine dll-Datei und schaut man sich mal andere Trainer an, so bestehen die auch nur aus einer einzigen exe Datei.

Also wenn ihr einen Vorschlag habt, vielleicht sogar ein Codebeispiel wäre ich euch sehr dankbar.

mfg
Yoda2003
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: Tastendruck bemerken

  Alt 17. Nov 2008, 20:53
Ist ein Crosspost gelle !?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Tastendruck bemerken

  Alt 17. Nov 2008, 20:54
Hallo

Schau dir die Hier im Forum suchenRegisterHotkey() Funktion an.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Tastendruck bemerken

  Alt 17. Nov 2008, 21:09
Wenn du bei Tastendrücken benachrichtigt werden willst sind Messages, Hotkeys und Hooks das richtige. Aber man kann auch abfragen ob eine Taste gedrückt ist oder nicht mit GetKeySate und GetAssyncKeyState
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Yoda2003

Registriert seit: 2. Apr 2007
16 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Tastendruck bemerken

  Alt 17. Nov 2008, 21:12
Habs mit nem Timer und
if GetAsyncKeystate(VK_F1) <> 0 then
realisiert bekommen.

Vielen Dank für die Hilfe.

mfg
Yoda2003
  Mit Zitat antworten Zitat
Cyberstorm

Registriert seit: 23. Okt 2003
159 Beiträge
 
Delphi 2010 Architect
 
#6

Re: Tastendruck bemerken

  Alt 17. Nov 2008, 22:17
würde register hotkey nahelegen:

mit dem timer ist das meiner meinung nach unsauber, weil du 1. keine wirkliche garantie dafür hast, ob dein hotkey gedrückt wurde und 2. es auch nicht gerade schöne ist jede millisekunde einen aufruf zu starten. und mehr code ist es auch nicht wirklich:
Delphi-Quellcode:
//bei frmMain --> private mit rein:

  private
    procedure WMHotKeyRecieved(var Msg:TWMHOTKEY); message WM_HOTKEY;

procedure TfrmMain.FormCreate(Sender: TObject);
begin
  RegisterHotKey(Handle, 666, 0, VK_F1);
end;

procedure TfrmMain.WMHotKeyRecieved;
begin
  Showmessage('F1 gedrückt');
end;
  Mit Zitat antworten Zitat
Yoda2003

Registriert seit: 2. Apr 2007
16 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Tastendruck bemerken

  Alt 18. Nov 2008, 19:26
Danke Cyberstorm,
das ist natürlich eine viel elegantere Lösung und habe die sofort übernommen.
Klappt nun alles 1a
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz