-
Also ich habe mir die das Programm mit der Klasse JoystickInterface von der folgenden Seite heruntergeladen:
http://www.codeproject.com/KB/directx/joystick.aspx
Bei diesem Programm hatte es ein Test Programm für den Joystick dabei in dem habe ich die Zeile:
Code:
private JoystickInterface.Joystick jst;
Da dachte ich mir das ich diese Zeile in mein Programm übernehmen kann um die in der Klasse enthaltenen Methoden zu benutzen.
P.S.
Ich habe mitlerweile noch mehr Klassen gefunden:
http://www.mycsharp.de/wbb2/thread.php?postid=286490
http://www.idi.ntnu.no/~fredrior/fil...ET/Joystick.cs
http://www.forestmoon.com/Software/AX12ArmSample/
Aber im Prinzip sollte das ja mit jeder Klasse funktionieren, vorausgesetzt das die Klasse richtig programmiert ist.
Wenn du willst kann ich dir auch noch den Code der Spinne posten.
-
lies halt mal den Artikel im ersten Link. Da ist eigentlich erklärt, was du alles tun musst, um den Joystick anzusprechen.
-
Aber wie kann ich die c# klasse in mein Hauptprogramm einbinden und deren Methoden verwenden?
-
Hast du den Link in diesem Beitrag angeschaut? Dort wird erklärt, wie du die Klasse ins Projekt einbindest.
Dann kannst Instanzen der eingebundenen Klassen erstellen und verwenden.
-
Ja das habe ich soweit begriffen nur wie müsste der Code in meinem Projekt aussehen?
Also ich habe das ganze Projekt JoystickInterface in meine Projektmappe eingebunden, danach habe ich in meinem Hauptprojekt einen Verweis auf das Joystick Projekt festgelegt.
Und wie kann ich jetzt die im JoystickInterface programmierten Methoden in dem Hauptprojekt verwenden?
Ich muss doch irgendwie ein Objekt erzeugen, oder verstehe ich da was vollkommen falsch?
Es tut mir Leid wenn ich so frage aber das Problem ist das ich vorhin noch nie Objektorientiert Programmiert habe.
In PHP kann man ja neue Funktionen einfach per include irgendwas.php oder require irgendwas einbinden.
Aber anscheinend geht das in C# nicht so einfach.
MFG
Kevin Haag
-
Also du brauchst:
eine Variable für den Joystick
Code:
private JoystickInterface.Joystick jst;
Dann musst du den Joystick finden und initialisieren:
Code:
// Joystick-Objekt erzeugen
jst = new JoystickInterface.Joystick(this.Handle);
// alle angeschlossenen Sticks finden
string[] sticks = jst.FindJoysticks();
// den ersten gefundenen Stick verwenden
jst.AcquireJoystick(sticks[0]);
Danach kannst du mit jst.UpdateStatus() die aktuellen Werte lesen und mit jst.Axis[A-F] auf die Achsen zugreifen und im Array jst.Buttons die Werte für die Buttons abfragen.
-
hei Danke dir Viel mal genau das habe ich gesucht ich werde jetzt mal versuchen das für mein Programm anzupassen. Uns sonst melde ich mich wieder ;)
Hast du evtl. ein HowTo, Anleitung wo das Allgemein erklärt? Sodas ich das auch mit einer anderen Klasse machen könnte?
MFG
Kevin Haag
-
http://www.developer.com/net/net/article.php/1445631 hab ich jetzt mit google mal gefunden, ist halt wieder Englisch... Sonst solltest du dich mal nach einem guten Buch über Objektorientierung umschauen.
-
Danke jeebee für deine Antwort wenn ich mal Zeit finde werde ich mir es durchlesen;)
MFG
Kevin Haag
-
Hallo zusammen, ich bins mal wieder ;)
Ich habe nochmals eine Frage:
Wie kann ich eine Funktion solange ausführen bis ich den Button denn ich drücke um die Funktion zu starten loslasse?
MFG
Kevin Haag
-
Evtl. einen Thread mit Endlosschleife in der sowas wie
Code:
while(button.Pressed) { tu_was(); }
ausgeführt wird.
-
Danke dir, ich werde das auprobieren sobald ich wieder bei der Spinne bin :D
Jetzt noch ne Frage :P
Und zwar ich will die grauen Buttons durch Bilder ersetzen und habe nun in der Eigenschaft des Buttons ein Image festgelegt. Dieses erscheint ja auch aber wenn ich das Programm ausführe erscheinen die Bilder nicht. Gibt es da irgendeine Einstellung die man vornehmen muss?
-
Sieht für mich so aus, als wären die Buttons disabled. Dann könnte man auch nicht darauf klicken. Die Bilder und evtl vorhandene Schrift wären dann ausgegraut.
-
Die Buttons sind enabled den ich kann auch darauf klicken. Oder was genau meinst du damit?
-