Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
--- Zeichenabfrage in C und C++ (http://www.informatikerboard.de/board/thread.php?threadid=1248)


Geschrieben von nano99 am 17.07.2012 um 18:18:

  Zeichenabfrage in C und C++

Meine Frage:
Hi!
Weiß hier irgendjemand, wie man Zeichen der Tastatur in C++ abfragt?
Ich will nämlich so einen Programmcode machen:

Wenn Taste nach rechts gedrückt, lösche Zeichen O von bisheriger Position, gehe eine Position nach rechts und schreibe Zeichen O dort.
und:
Wenn Taste nach links gedrückt, lösche Zeichen O von bisheriger Position, gehe eine Position nach links und schreibe Zeichen O dort.

Meine Ideen:
Wahrscheinlich muss man es in einer while-Schleife machen.
Aber welchen Befehl braucht man, um die Tastencodes von der Tastatur abzufragen?
Und welche Taste hat welchen Tastencode?



Geschrieben von HueHang am 17.07.2012 um 18:50:

 

Also unter Windows kannst du das hier benutzen:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms646293%28v=vs.85%29.aspx



Geschrieben von nano99 am 17.07.2012 um 19:16:

  Zeichenabfrage in C und C++

Vielen Dank für die Antwort!

Aber könntest du mir vielleicht auch noch ein konkretes Beíspiel nennen (also eine Abfrage für die rechte, linke, und vielleicht auch obere und untere Pfeiltaste)?

Das Grundgerüst ist ja dieses:


#include <iostream>;
#include <Windows.h>;

using namespace std;

int main()
{
return 0;
}



Geschrieben von Karlito am 17.07.2012 um 23:51:

 

Es wäre nicht peinlich, falschen Quelltext hier zu posten... Habe Mut zur Lücke!

VG,

Karlito



Geschrieben von HueHang am 18.07.2012 um 01:00:

 

Hier ein minimales Beispiel für die linke Pfeiltaste
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
#include <iostream>
#include <Windows.h>

int main(int argc, char *argv[])
{
    while(true)
    {
        Sleep(5);
        if(GetAsyncKeyState(VK_LEFT)&1 == 1)
        {
            std::cout << "Links\n";		
        }
    }
    return 0;
}



Geschrieben von nano99 am 18.07.2012 um 06:25:

  Zeichenabfrage in C und C++

Vielen Dank für die Antwort!
Sie hat mir sehr weitergeholfen!
Für die Ausgabe von der rechten, linken, oberen und unteren Pfeiltaste habe ich jetzt diesen Code:


#include <iostream>;
#include <Windows.h>;

using namespace std;

int main()
{
while(true)
{
Sleep(5);
if(GetAsyncKeyState(VK_LEFT)&1 == 1)
{
cout << "Links\n";
}
else if(GetAsyncKeyState(VK_RIGHT)&1 == 1)
{
cout << "Rechts\n";
}
else if(GetAsyncKeyState(VK_UP)&1 == 1)
{
cout << "Oben\n";
}
else if(GetAsyncKeyState(VK_DOWN)&1 == 1)
{
cout << "Unten\n";
}
}
return 0;
}


Aber kenntst du vielleicht auch noch eine Abfrage, die es ermöglicht, Buchstaben oder Zahlen abzufragen?



Geschrieben von HueHang am 18.07.2012 um 12:24:

 

Das geht mit derselben Funktion. Guck einfach in dieser Tabelle nach, welche Konstanten dafür definiert sind: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731%28v=vs.85%29.aspx


Forensoftware: Burning Board, entwickelt von WoltLab GmbH