Lupo2 Geschrieben 15. Januar 2002 Geschrieben 15. Januar 2002 Kann mir jemand diese bitte veraten denn ich finde nirgends welche um die Pfeiltasten zu Programmieren. Ich brauche Sie ganz dringends. ;)
Woodstock Geschrieben 15. Januar 2002 Geschrieben 15. Januar 2002 Was willst Du denn damit machen? Erkläre mal kurz Dein Problem! Bine
Lupo2 Geschrieben 15. Januar 2002 Autor Geschrieben 15. Januar 2002 Hallo Woodstock, ich Programmier gerade ein Labyrinth aber um das Meneke zu bewegen muß ich den ASCII - Code der Pfeiltasten haben, weil sonst geht es nicht. Ich hoffe du verstehst mich jetzt. Und kannst mir vielleicht helfen.
Goos Geschrieben 15. Januar 2002 Geschrieben 15. Januar 2002 Hoi Lupo Hmmm du hast aber komische Probleme.......das steht doch eigentlich in jeder ASCII Tabelle drin.....naja nicht in jeder stehst dann auch octal, so wie du das wahrscheinlich brauchst. Gehts dir nur um die Werte, oder auch um die technische Umsetzung? ....soweit ich das nu im Kopf habe is z.b. pfeil hoch 120 und pfeil runter 110, kann aber auch umgekehrt sein....mag jetzt nich nachgucken Vielleicht hilft dir das schon was, ansonsten meld dich halt nochma. Goos
gajUli Geschrieben 15. Januar 2002 Geschrieben 15. Januar 2002 120 und 110 liegen mitten im Alphabet. Aber einen erzaehlen von wegen "Du brauchst ja nur in der ASCII-Tabelle schauen". :D:D Uli
Goos Geschrieben 15. Januar 2002 Geschrieben 15. Januar 2002 och naja...das kannst so nich sagen...hab gerad auch ma geschaut. So wie sichs anhoert handelt sichs ja um ne Consolenanwendung. und ich haette da ein Pfeil-runter durch ne Abfrage auf '\120' ermittelt. Is halt alles nur eine Frage des passenden Zahlensystems :D Goos
TingleTangle Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Und welches Zahlensystem soll das sein? Erzähl doch keinen Bullshit. 120 ist mit sicherheit in keinem gängigen System eine Pfeiltaste.
maddin Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 probiers doch einfach aus. beispiel: main () { for (; { while (!_kbhit()); cout << _getch(); } } dann sollten alle eingegebene tasten ausgegeben werden. pfeiltasten drücken und der code wird die erscheinene.
TingleTangle Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Probier mal diese: $up = "\e[A"; # oben $down = "\e[b"; # unten $left = "\e[D"; # links $right = "\e[C"; # rechts Die sind aus einem alten Code von mir und sollten funzen.
Goos Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Hoi Doc hmmm bin jetzt aber sehr verwirrt....ansich muss ich dir ja rechtegeben, dass ich Bullshit erzaehlt hab und 120 eher P, aber sicher keine Pfeiltaste is. Drauf gekommen bin ich ja gestern abend durch nen alten Code von mir in dem das so stand. Ich muss jetzt heut abend wirklich nochmal schaun, was ich da so gelesen hab......denn funktioniert hats damals alles. Gott nehme mir meine Blindheit Goos
TingleTangle Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Bleibt nur zu hoffen, dass uns Lupo2 bald sagt wie's geht.
Woodstock Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 @maddin: Dein Code funktioniert jedenfalls bei mir nicht (bei den Anderen ja vielleicht). Zum einen ist die for Schleife total unnütz, und für die Pfeiltasten gibt er nur den Code für Sonderzeichen aus (ist bei mir 224). Aber dabei ist es ihm wurscht ob nun nach oben, nach unten oder z.B. auch Einfügen oder Ende gedrückt wird. @all Also, ich habe in meinem Buch folgendes dazu gefunden:Originaltext aus meinem Buch Um herauszufinden, ob der Anwender eine Pfeiltaste gedrückt hat, nutzt inside (ist eine Funktion um die es da gerade geht) eine spezielle Eigenschaft von getch , die darin besteht, dass getch beim Drücken einer Funktions- oder Pfeiltaste nicht wie bei anderen (gewöhnlichen) Tasten einen Zeichencode zurückliefert, sondern den Wert 0 (da diese Sondertaste nicht Bestandteil des Zeichensatzes sind und einen solchen Zeichencode nicht besitzen). Der Wert 0 alleine lässt allerdings nur erkennen, dass eine Sondertaste gedrückt wurde. Um auch bestimmen zu können, welche Sondetaste gedrückt wurde, muss man außerdem den so genannten Scancode heranziehen, einen ganzzahligen Wert, der für jede Taste existiert und dise eindeutig identifiziert. Die Scancodes von Funktions- und Cursortasten lassen sich ermittel, indem man die Funktion getch zweimal hintereinander aufruft, wobei der erste Aufruf den Wert 0 liefert und der zweite den Scnacode der betreffenden Taste. Mitvoid main () { int c = getch(); if(c) printf("Das Zeichen war: %c", c) else { c = getch(); printf("Sondertaste mit Scnacode %d", c); } } [/PHP] wird entweder das von [i]getch[/i] gelesene Zeichen ausgegeben oder - falls eine Sondertaste gedrückt wurde - nach dem zweiten Aufruf von [i]getch[/i] deren Scancode. Die Scancodes für die Pfeiltasten sin: 72 -> Pfeil nach oben 75 -> Pfeil nach links 77 -> Pfeil nach rechts 80 -> Pfeil nach unten Ich hoffe das klappt bei Euch, kann es nicht prüfen, weil ich den ANSI-Code und nicht den ASCII-Code geladen habe. Bine
Goos Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 hihihi...also wenn ich jetzt mal auf Woodstocks Pfeil runter bezugnehm, dann is meine 120 fuer Pfeil runter gar nich so vekehrt denk ich. Sollte doch hinhauen, dass 120 (oktal) = 80 (dezimal). Oder hab ich mich mal wieder verrechnet? :D Goos
Woodstock Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Ja, das stimmt. 80dezimal ist 120oktal. Hast Du den Code denn mal ausprobiert? Bine
Goos Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Na wie schon weiter oben mal geschrieben hab ich das mit dem 120 irgendwie im kopf und ich hab das dann auch gestern abend auch noch in nem alten Code von mir gefunden.....war son Konsolen Tetris und da brauch man die Pfeiltasten ja......naja deshalb geh ich halt mal davon aus, dass es funzt .....die GROSSE FRAGE hier is wahrscheinlich eher, ob sich Lupo2 ueberhaupt noch dafuer interessiert *g* Goos
Woodstock Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Naja, man kann ja auch nicht immer online sein. Das schaffe ja nichtmal ich, und ich bin schon ziemlich oft online. Bine
Goos Geschrieben 16. Januar 2002 Geschrieben 16. Januar 2002 Klar kann man nicht immer nachschaun, aber die meisten tuns zumindest am Tag nachdem sie was gefragt hatten.....ich dachte mir nur, dass er vielleicht schon laengst ne Lösung gefunden hat oder so Goos
Lupo2 Geschrieben 22. Januar 2002 Autor Geschrieben 22. Januar 2002 Hey Leute, Danke für die vielen antworten aber die Lösung habe ich leider bisher nicht gefunden aber das mit dem Tetris Spiel wegen denn Pfeiltasten da habe ich schon Interresse schreibt dochmal zurück. Und ich war in letzter Zeit im Urlaub und kam nicht ins Internet sonst hätte ich es öfter mal abgefragt. Ich bin euch echt dankbar für diese Hilfe aber irgendwie will es bei mir nicht funktionieren. Habt ihr vielleicht auch noch andere Vorschläge. :rolleyes: :confused: :confused: :confused:
Goos Geschrieben 22. Januar 2002 Geschrieben 22. Januar 2002 Also meine Loesung so wie ich das mal realisiert hatte hat zumindest bei mir mal gefunzt Poste doch mal n Stueckl von deinem Code in dem du das mit der Abfrage versuchst...vielleicht laesst sichs irgendwie hinbiegen Goos
Data2006 Geschrieben 9. Oktober 2022 Geschrieben 9. Oktober 2022 Hallo zusammen, ich habe dieses Programm probiert. Klappt leider nicht: #include <iostream> #define LINKS 75 #define RECHTS 77 #define HOCH 72 #define RUNTER 80 int main() { char steuerung; std::cout << "Geben Sie Cursor links, rechts, oben oder unten ein: "; std::cin >> steuerung; std::cout << "Die Steuerung war: " << steuerung << std::endl; return 0; } cout << _getch(); funktioniert leider auch nicht. Muß ich da noch was anderes includieren? LG Heiko
allesweg Geschrieben 10. Oktober 2022 Geschrieben 10. Oktober 2022 Respekt. Mirel und charmanta reagierten darauf 2
Thanks-and-Goodbye Geschrieben 10. Oktober 2022 Geschrieben 10. Oktober 2022 @Data2006 bitte einen eigenen Thread mit aussagefähiger Fehlermeldung erstellen. „Funktioniert nicht“ reicht nicht aus.
charmanta Geschrieben 11. Oktober 2022 Geschrieben 11. Oktober 2022 wenn das unter einem unixoden OS laufen soll musst mit mit Terminfo bzw Termcap arbeiten. Da werden Sondertasten gemäss Terminalbeschreibung auf Escape-Sequenzen der Eingabegeräte gemappt. Vermutlich arbeitest Du im Code dann mit den symbolischen Tasten
Empfohlene Beiträge