pfeiltasten
-
moin
ich habe ein problem
also ich will ein kleines spiel programmieren
dazu brauche ich allerdings die pfeiltasten ich muss buchstaben bzw. zahlen verschieben durch die pfeiltasten ich beutze den visual c++ compiler wie ich die codes für die pfeiltasten rausbekomme weiss ich schon ich will nur noch wissen wie ich es in eine win 32 konsolenanwendung implementiere
danke schon mal im voraus für die hilfe
frohes neues
-
gehört eigentlich ins konsolenforum wegen der getch.. und steht auch im konsolenfaq...
int main(){ unsigned char chr; do { chr=getch(); printf("%i",chr); if ((chr==224) || (chr==0)) { chr=getch(); printf("%i",chr); switch(chr) { case 13: printf("go"); break; case 75: printf("<-"); break; case 77: printf("->"); break; case 83: printf("ENTF"); break; case 82: printf("EINF"); break; case 80: printf("pfeil nach unten"); break; case 79: printf("ENDE"); break; case 72: printf("pfeil nach oben"); break; } } }while(true); return 0; }
-
yo derbes thx an dich hast mir echt weitergeholfen thx
-
wat issn "derbes"?? fürn släng
*grins*vergiss nicht die conio.h zu inkludieren und zweimal getch() muss sein!
(lies im faq nochmal dazu nach)
-
ohh thx hab mir gerade den kopf zerbrochen was ich wohl vergessen hab aja wiesbadener slang
-
re nochma
also ich habs ma ausprobiert und es is ja leider in c bräuchte es allerdings in c++ das is das eine das andere is das ich glaube das es nich das is was ich brauche
also ich habe ein zweidimensionales datenfeld mit im mom. noch zahlen und einem leerfeld drinne später will ich die zahlen durch buchstaben ersetzten
das leerfeld soll mit hilfe der pfeiltasten verschoben werden bzw. die buchstaben also eine art verschiebepuzzel
thx for help
-
geht in C++ genauso. Du liesst einfach ein unsigned char ein und vergleichst diesen mit den Zahlenwerten, die du oben ablesen kannst.
-
ich brauch den quellcode aber in c++ wenns möglich wäre
thx
-
naja ersetz das printf("irgendwas"); durch cout<<"irgendwas"; (vorher iostream includen) und fertig.
getch ist soweit ich weiss weder C noch C++ und der Rest ist eh unverändert
-
ahh ok jetzt weiss ich was ich vergessen hab bei cout thx
-
getch() gibt es bei Borland Compiler und da bin ich mir 100% sicher, weil ich den fast jeden Tag brauch.... getch = get character (wenn mich nicht alles täuscht).
Wieso soll man nicht printf nehmen??? ich finde das tausendmal praktischer als jedes mal cout<<"wdq"<<endl; eingeben zu müssen....
-
Also printf() sollte man nicht unter C++ verwenden, dort wird eben für die Ausgabe cout benützt!
getch() heißt get character und ist eine Konsolenfunktion. Sie ist beim MSVC genauso wie beim Borland-Compiler enthalten. Auch die meisten anderen Compiler haben sie in der <conio.h>.
endl musst du nur eingeben wenn du in die nächste Zeile willst und dabei den Puffer flushen willst, alles wird dann in die Ausgabe geschoben. Für normale Zeilenumbrüche reicht auch ein '\n' - welches du bei printf ebenfalls ausgeben musst.
BTW: _Alles_ was hier steht findet sich in einer FAQ wieder...
MfG SideWinder