Okay, ich habe jetzt am Anfang zwei bool´sche Variablen "pressedL" und "pressedR" mit "False" initalisiert, deinen Code kopiert, ging leider nicht.
Code:
case WM_KEYDOWN:
{
switch (wParam)
{
case VK_RIGHT:
if (!pressedR) {++iX; InvalidateRect(hwnd, NULL, TRUE);}
break;
//hier sollte noch die Abfrage für die linke Maustaste hin
default:
return 0;
}
InvalidateRect(hwnd, NULL, FALSE);
return 0;
}
Muss hier nicht auch noch hin, dass wenn VK_RIGHT gedrückt wurde, "pressedR" auf "true" springt? Ging aber auch nicht.
@Pillewutz
Ich weiß, dass ich Methoden verwenden sollte, diese wollte ich dann bei WM_PAINT verwenden, da dort verdammt viel Text und so rein muss.
Problem ist nur, dass wenn ich ganz unten eine draw()-Funktion machen will, es hwnd nicht mehr kennt...
Ich habe nun probiert ++iX mit einer for-Schleife
WM_KEYDOWN:
VK_RIGHT:
for(iXold = iX; iX<iXold + 1; iX++)
berechnen zu lassen und habe danach nochmal das Verhalten von iX mir angeschaut, das Ergebnis: bei int geht iX auf 1 und danach nicht weiter, bei long double blieb iX auf 0
EDIT:
Ich hab keine Ahnung warum aber auf einmal geht es super mit
iX++; InvalidateRect(hwnd, NULL, TRUE);
Danke für eure hilfe kann geschlossen werden =D