Je voudrais savoir si (par exemple) la touche 3 est enfoncée (KEY_NUM3
).
J'ai essayé getKeyStates
mais il ne détecte que les touches d'action du jeu.
Comment puis-je connaître l'état des clés d'action autres que de jeu?
(J'ai remplacé les fonctions keyPressed
et keyReleased
de Canvas et de stocker les états clés dans un tableau (j'utilise un Vector
pour le stockage, mais je pense que je pourrais les stocker dans un tableau aussi, si c'est le problème), mais cela semble pas être très agréable)Appuyez sur les touches dans J2ME avec GameCanvas
3
A
Répondre
3
dans votre ToucheEnfoncée utiliser le keyCode
passé dans comme si
protected void keyPressed(int keyCode)
{
//try catch getGameAction as can legally throw an exception
int gameAction = getGameAction(keyCode);
switch(gameAction)
{
case UP:
break;
case DOWN:
break;
case LEFT:
break;
}
switch(keyCode)
{
case KEY_NUM1:
break;
case KEY_NUM2:
break;
case KEY_NUM3;
break;
}
}
-1
Je suppose que cela peut être quelque chose comme le code ci-dessous
int key=getKeyStates();
// i mean keyStates();
if((key&down_pressed)!=0)
{
//do movements
}
mais peut être
if((key & Canvas.key_num3)!=0)
{
//do something
}
//you can set the super() to true in the constructor