![]() |
[Klasse] TJoystick - alles in einer kleinen Unit!
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo DP!
Hier meine Lösung zur Einbindung eines Joysticks in Delphi-Programme. Ist sehr allgemein gehalten und darf meinetwegen auch verändert werden: Force Feedback wird nicht unterstützt, ist aber auch meinerseits nicht geplant. Kommentare sind noch nicht vorhanden - geplant aber kann dauern. Viel Spaß damit wünscht euch Euer LDer. P.S.: Ich schreibe doch mal schnell eine Kurz-Anleitung:
Delphi-Quellcode:
Sobald das Objekt freigegeben wird, speichert es alle seine Daten in 'Joystick.ini' im Programmverzeichnis. Beim Erstellen einer neuen Instanz werden diese Einstellungen geladen, falls vorhanden.
//Objekt erstellen
Joy:=TJoystick.Create; //Reaktionszeit einstellen Joy.PollInterval:=10; //Achsenhandling einstellen: ////htSlider: Event OnAxis wird aufgerufen, sobald die Achse bewegt wird (Standard) ////htAxis: Event OnAxis wird bei jedem Polling (zuvor eingestellt) aufgerufen. Joy.Handling[aX]:=htAxis; Joy.Handling[aY]:=htAxis; //Zuweisen der Events (Standard: nil): ////TButtonProc=procedure(pButton:TButtonNumber; State:TButtonState)of object; //////pButton: Der Button, der das Event ausgelöst hat (0..31) //////State: Neuer Status von pButton (0: losgelassen, 1: gedrückt) ////TAxisProc=procedure(pAxis:TAxis; State:TAxisState)of object; //////pAxis: Die Achse, die das Event ausgelöst hat (0..7)|(aX, aY, aZ, aR, aU, aV, povX, povY) //////State: Neuer Status von pAxis (-100: ganz nach links/unten bewegt ... 0: zentriert ... 100: ganz nach rechts/oben bewegt) Joy.OnButton:=Self.ButtonEvent; Joy.OnAxis:=Self.AxisEvent; |
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Zitat:
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Zitat:
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Hey, danke für eure schnellen Rückmeldungen!
@Die Muhkuh Gute Idee, aber da ich kein Vista benutze, bin ich selbst schonmal nicht betroffen :P Bau' du es doch ein ;) Nee, ehrlich, werde ich wohl bald machen, wenn mir keiner zuvorkommt... @Jakob Ullmann Ebenso Force Feedback - vielleicht als Extra... Wenn sich wer findet, gut, oder ich hab halt mal Langeweile ;) Das ganze ist halt Teil eines größeren Projektes, und das wird erstmal gebaut bevor ich die Klasse verfeinere. Gruuß vom LDer |
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Du machst Force Feedback und ich bau meinen Vorschlag selbst ein? ;)
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Wenn du eine Ahnung hast, wie FF implementiert wird, gerne ;)
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Lies meinen Satz richtig :stupid:
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Zitat:
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Soweit ich weiß, ist Force Feedback nur mit DirectInput möglich. Mit den Joystick-Befehlen aus der MMSystem.pas (IMHO übrigens nicht mehr verwendet werden sollten, da Überrest aus Windows 3.1) kommst du da nicht viel weiter...
|
Re: [Klasse] TJoystick - alles in einer kleinen Unit!
Liste der Anhänge anzeigen (Anzahl: 1)
So, ich hab jetzt mal ne Komponente draus gebastelt :)
Siehe Anhang^^ Gruß vom LDer. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:27 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