AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi JoyStick - Position des Sticks "sensibel" abfragen...?
Thema durchsuchen
Ansicht
Themen-Optionen

JoyStick - Position des Sticks "sensibel" abfragen...?

Ein Thema von LDericher · begonnen am 2. Mai 2009 · letzter Beitrag vom 2. Mai 2009
Antwort Antwort
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#1

JoyStick - Position des Sticks "sensibel" abfragen

  Alt 2. Mai 2009, 15:24
Also,

Ich brauche eine JoyStick-Unterstützung für mein Programm, wie laut SuFu schon einige vor mir...
Habe mich mal ans MMSystem rangemacht und bin angenehm berrascht von der Einfachheit der Lösung. Hab mir auch gleich mal eine Klasse geschrieben, die alles kann, was ich brauche.

Na ja, FAST alles

Problem: Folgendermaßen lädt sich meine Klasse alle Stati von Buttons/Achsen rein:
Delphi-Quellcode:
function GetState(JoyID:Cardinal; Device:TJoyInfoEx; DeviceInfo:TJoyCaps; Mode:integer):TAllState;
begin
if(DeviceInfo.wCaps and JOYCAPS_HASZ) <> 0
  then Device.dwSize := sizeof(TJoyInfoEx);
Device.dwFlags := Mode;
JoygetposEx(JoyID, @Device);
Result.AxisState:=GetAllAxis(Device, DeviceInfo);
Result.ButtonState:=GetAllButtons(Device, DeviceInfo);
end;
Allerdings sind meine Achsenstati immer nur 0, 32267 oder 65535; diese Ergebnisse muss ich dann ja als vollen Ausschlag interpretieren.

Nun hätte ich aber gern eine Lösung, die die Achsen etwas sensibler abfragt, und z.B. das volle Spektrum 0..65535 ausnutzt. wobei die "Grundpositionen" Links, Mitte, Rechts gleichbleiben, oder eben vergleichbar.

(Am Ende will ich die Rückgabewerte auf den Bereich -100..100 begrenzen, sodass ich den Mauszeiger anhand der Fensterbreite und -höhe und des Rückgabewerts setzen kann, den Part übernehme dann aber ich )

Wenn irgendwie möglich, will ich auf weitere DLLs/Module in meinem Programm verzichten, lasse mich aber auch umstimmen, falls unmöglich.

BTW: Ich weiß, dass die von mir gewollte Abfrage möglich ist; siehe dazu Systemsteuerung/Gamecontroller: Da wird das Kreuz auch relativ zum Stickausschlag gesetzt.

Falls es Unklarheiten an der Fragestellung geben sollte, postet das als Feedback, damit ich mich genauer ausdrücken kann.

Danke im Voraus,
Euer LDer.

Edit: Zur Belohnung gibts hier dann meine - fertige - Klasse als Open-Source !
  Mit Zitat antworten Zitat
Benutzerbild von Mikescher
Mikescher

Registriert seit: 3. Jun 2008
Ort: Offenburg
265 Beiträge
 
Delphi 2009 Professional
 
#2

Re: JoyStick - Position des Sticks "sensibel" abfr

  Alt 2. Mai 2009, 16:02
Zitat von Superwinger:
(Am Ende will ich die Rückgabewerte auf den Bereich -100..100 begrenzen, sodass ich den Mauszeiger anhand der Fensterbreite und -höhe und des Rückgabewerts setzen kann, den Part übernehme dann aber ich )
Ich glaub so was gabs schon mal such mal als Joy2Any, das kannst du vllt als kleine Anregung nehmen
Mike
Operation gelungen, Patient tot.

http://www.mikescher.com
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: JoyStick - Position des Sticks "sensibel" abfr

  Alt 2. Mai 2009, 16:10
Zitat von Mikescher:
Zitat von Superwinger:
(Am Ende will ich die Rückgabewerte auf den Bereich -100..100 begrenzen, sodass ich den Mauszeiger anhand der Fensterbreite und -höhe und des Rückgabewerts setzen kann, den Part übernehme dann aber ich )
Ich glaub so was gabs schon mal such mal als Joy2Any, das kannst du vllt als kleine Anregung nehmen
Das ist die Grundlage meiner Klasse...
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: JoyStick - Position des Sticks "sensibel" abfr

  Alt 2. Mai 2009, 16:17
Alles klar, das Problem war hardwarebezogen
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: JoyStick - Position des Sticks "sensibel" abfr

  Alt 2. Mai 2009, 17:18
Wie versprochen, hier meine fertige Klasse. (Siehe Anhang)

Alles in einer kleinen Unit!
Angehängte Dateien
Dateityp: pas mtjoystick_289.pas (9,1 KB, 27x aufgerufen)
  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 02:07 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