Hallo miteinander,
Ich schreibe gerade an einem textbasiertem Strategiespiel (also Konsolenanwendung) und wollte mein Menü über Tastatur anstatt simpler char Eingabe steuerbar machen. Dafür habe ich mir eine Klasse erstellt, die Funktionen zur Tastenverarbeitung bei jedem einzelnen Untermenü beinhaltet. Allerdings bin ich gleich bei der ersten Funktion (ControlMainMenue) auf ein Problem gestoßen:
Obwohl ich es sowohl mit einer Keydown als auch einer SDL_PollEvent Verzweigung versucht habe, scheint mein Programm nie einen Tastaturdruck zu erkennen. Fehlermeldungen gibt der Compiler nicht an...
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
int CKeyControl::ControlMainMenue ()
{
run = 0;
while (run == 0)
{
SDL_Event Event;
SDL_PumpEvents ();
if (SDL_PollEvent (&Event))
{
switch (Event.type)
{
case (SDL_KEYDOWN):
{
switch (Event.key.keysym.sym)
{
case (SDLK_n):
{
cout<<"Es hat funktioniert!"<<endl;
run = 1;
return 0;
}break;
}
}break;
}
}
}
};
|
Die Funktion ist noch nicht vollständig, aber es kommt mir vorrangig darauf an erstmal die Tastenerkennung zum Laufen zu bringen! Wie bereits gesagt habe ich ebenso erfolglos bereits die Variante mit einer KeyDown Funktion versucht, so wie sie im Beispiel in Kapitel 12 aufgeführt ist.
Ich wäre wirklich dankbar für einen Lösungsvorschlag, da sich der Fortschritt des Projekts an diesem Problem aufhängt!