Как я могу удалить диалоговое окно из компонента LWUIT
Я разрабатываю один проект с использованием LWUIT, мобильного приложения Midlet. когда я нажимаю цифровые клавиши, открывается диалоговое окно. когда я нажимаю клавиши #,0,* диалог должен быть закрыт.
я использую Dialog.dispose()
способ закрыть диалог. Но это не работает. Ниже мой код. Может кто-нибудь сказать мне, в чем проблема в моем коде?
public class javaForm extends Component implements ActionListener
{
Dialog d=new Dialog();
public void keyPressed(int key){
System.out.println("Key pressed :"+key);
switch(key)
{
case 48:
d.show(130,20,30,30,true);
break;
case 49:
d.show(130,20,30,30,true);
break;
case 50:
d.show(130,20,30,30,true);
break;
case 51:
d.show(130,20,30,30,true);
break;
case 52:
d.show(130,20,30,30,true);
break;
case 53:
d.show(130,20,30,30,true);
break;
case 54:
d.show(130,20,30,30,true);
break;
case 55:
d.show(130,20,30,30,true);
break;
case 57:
d.show(130,20,30,30,true);
break;
case 56:
d.show(130,20,30,30,true);
break;
case 42:
d.dispose();
break;
case 35:
d.dispose();
break;
default:
d.dispose();
break;
}
}
public void actionPerformed(ActionEvent ae)
{
throw new UnsupportedOperationException("Not supported yet.");
}
}
На самом деле javaForm - это Java-программа, разработанная с использованием LWUIT, и я вызываю эту javaForm внутри MIDLET, которая называется javaForm1. Я включил все необходимые пакеты.
1 ответ
Почему вы не используете Form.addGamekeyListener()
?
Положить gameKeyListener
в молодости Form
(продолжается ActionListener
в Form
) и позже в actionPerformed(ActionEvent ae)
захватить ключ с ae.getKeyEvent
и закройте Dialog
,
Сопоставьте GameKeys с Canvas
, Например: Canvas.FIRE
,