У меня есть растровое поле в приложении blackberry5 с подключенным к нему слушателем fieldChanged, который теперь работает абсолютно нормально. Моя проблема в том, что у меня также есть соответствующее меню для той же цели (я не могу удалить его требование), и при нажатиименю Я получаю JVM 104 IllegalStateException
, вот мой класс меню
public class TabMenu extends MenuItem{
MainScreen menuScreen;
Field button;
public TabMenu(String menuLabel,MainScreen menuScreen,Field button)
{
super(menuLabel, 1, 0);
this.menuScreen = menuScreen;
this.button = button;
}//end constructor
public void run()
{
FieldChangeListener listener = (FieldChangeListener)this.menuScreen;
listener.fieldChanged(this.button, this.button.getIndex());
this.button.setFocus();
}
}
, а здесь код меню и поля
protected void makeMenu(Menu menu, int instance) {
menu.add(new RefreshMenu());
menu.addSeparator();
menu.add(new TabMenu("Go >", this, goTab));
menu.addSeparator();
}
public void fieldChanged(Field field, int context) {
if (field == goTab) {
Dialog.alert("goinf")
}
}