Можно ли динамически устанавливать команды для элемента j2me?

У меня есть StringItem, который работает как кнопка. Стандартные пункты меню (Назад слева и Далее справа всегда присутствуют). То, что я хочу сделать, это оставить пункт меню «Назад» слева и изменить метку следующего пункта меню. Является ли это возможным?

Я попытался создать новую команду с необходимой меткой и добавить в stringiteim, но она не заменяет команду «Далее», а просто создает пункт меню с названием «Меню» с подпунктами «Далее» и «Моя метка команды».

Как я могу удалить Next или изменить его метку?


person Sergey    schedule 24.10.2011    source источник


Ответы (1)


Командный API не позволяет установить новую метку, поэтому, как вы правильно догадались, единственным вариантом было добавить новую команду. Вы просто забыли одну вещь...

... Я попытался создать новую команду с необходимой меткой и добавить в строку, но она не заменяет команду «Следующая», а просто создает пункт меню с названием «Меню» с подпунктами «Далее» и «Моя метка команды»...

... когда вы делали выше, вы забыли удалить команду «Далее». Код для замены команды должен быть примерно таким:

    myForm.removeCommand(nextCommand); // removes "Next" cmd
    myForm.addCommand(myCommand); // adds "My" cmd

или, если вы используете команды, связанные с элементом (ItemCommandListener API) вместо формы,

    // myStringItem below is your StringItem above
    myStringItem.removeCommand(nextCommand); // removes "Next" cmd
    myStringItem.addCommand(myCommand); // adds "My" cmd
person gnat    schedule 24.10.2011