Comment détecter l'événement clé emboutie sous forme LWUIT?
-
27-10-2019 - |
Question
Je l'ai écrit programme J2ME simple avec LWUIT package.I ont ajouté un Form
dans mon dossier de classe MIDlet. Supposons, appuyez sur une touche utilisateur alors je veux montrer une autre Form
.But je ne pouvais pas être en mesure de capturer l'événement clé dans mon LWUIT Form
.
Ceci est mon code snippt
import javax.microedition.midlet.*;
import com.sun.lwuit.*;
import com.sun.lwuit.events.*;
public class MultipleForm extends MIDlet implements ActionListener{
private Form mFirstForm, mSecondForm;
public void startApp()
{
if (mFirstForm == null)
{
Display.init(this);
mFirstForm = new Form("First Form");
Button button = new Button("Switch");
button.addActionListener(this);
mFirstForm.addComponent(button);
mSecondForm = new Form("Second Form");
Button button2 = new Button("Switch");
button2.addActionListener(this);
mSecondForm.addComponent(button2);
mFirstForm.show();
}
}
protected void keyPressed(int key)
{
System.out.println("Key Pressed");
if(key==52)
{
Form current = Display.getInstance().getCurrent();
if (current == mFirstForm)
{
mSecondForm.show();
}
else if(current==mSecondForm)
{
mFirstForm.show();
}
}
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
}
La solution
Pour saisir la clé de l'événement dans un Form
de LWUIT vous devez utiliser Form.addGameKeyListener(here the key, here actionListener)
Les touches sont mises en correspondance en utilisant Canvas
comme Canvas.FIRE
par exemple.
Essayez de le faire.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow