auf bestimmte tasten reagieren (C++)

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Wenn du das programmieren lernen möchtest, hole dir doch bitte ein Buch und fang an dich mit dem Thema zu beschäftigen. Solltest du dann hin und wieder Fragen haben, würde ich meine Fragen auf www.stackoverflow.com stellen und nicht in einem Forum das sich nicht komplett auf Programmierung fokusiert

Hallo!
Es ist jetzt nur ein Beispiel und kann je nach Anwendungsbereich zugeschnitten werden. Ich hoffe es hilft dir weiter.

#include <stdio.h>
#include <conio.h>
#include <windows.h>

// Die Elemente im Enum koennen je nach Vorhaben zum Abgleich genutzte werden.
enum PfeilTaste {Basis = -32, Auf = 72, Ab = 80, Links = 75, Rechts = 77};

// conio.h notwendig
// Bei dieser Methode wird immer der Tastenwert in key gespeichert.
// Nur wenn eine Pfeiltaste gedrueckt wurde, ist der Funktionsrueckgabewert 1.
bool getkeyI(char* key)
{
        *key =  getch();
     if(*key == Basis ){ // hier kann man auch direkt auf -32 pruefen
        *key =  getch();
         return true;
     }   return false;
}
// windows.h notwendig
// Diese Methode registriert auch Tastatureingaben, aul3erhalb des Programms.
// Die GetAsyncKeyState-Funktion meldet, ob die angegebene Taste
// (nicht)- / gedrueckt wurde oder gerade gedrueckt wird.
// <a href="http://msdn.microsoft.com/en-us/library/ms927178.aspx">http://msdn.microsoft.com/en-us/library/ms927178.aspx</a>
char getkeyII()
{
     if(GetAsyncKeyState(VK_UP   )) return 'u';
     if(GetAsyncKeyState(VK_DOWN )) return 'd';
     if(GetAsyncKeyState(VK_LEFT )) return 'l';
     if(GetAsyncKeyState(VK_RIGHT)) return 'r';
                                    return '_';
}
int main()
{
    char Key;
    while(true)
    {//stdio.h nur fuer printf 
     //printf("%d%d:", getkey(&Key), Key); // Testausgabe Methode 1
     //printf("<%c>", getkeyII());   // Testausgabe Methode 2
       Sleep(500);// 500 Millisekunden warten (windows.h notwendig)
    }
    return 0;
}

Tobias20111998 
Beitragsersteller
 18.05.2014, 12:45

Danke, war genau das, wonach ich gesucht habe

0

Beschäftige dich mit GUIs. Diese empfangen während der aktiven Laufzeit sog. Events, darunter auch Tastendrücke, welche du in eigens definierten Funktionen verarbeiten kannst.