#j2mepolish
#j2mepolish
Вопрос:
Прошу прощения за мой плохой английский, но я из Чешской Республики. Спасибо за понимание.
Привет, я программирую простой калькулятор на польском языке J2ME. Я создал кнопки, используя список объектов (польский язык J2ME, доступен шаблон), и теперь мне нужно отобразить некоторое текстовое поле для ввода терминов. Но я не знаю, как мне это сделать. Список объектов не поддерживает это:
myList.append(myTextField);
Итак, у меня есть все кнопки, и теперь мне нужно только текстовое поле, но для меня это проблема. Спасибо за любую помощь. Питер.
Ответ №1:
Вместо использования списка вам следует попробовать использовать форму. Это позволило бы вам добавить текстовое поле в начале и создать TableItem из возможных кнопок, которые вы можете нажимать, или использовать различные объекты StringItem и продуманный стиль, такой как midp2 view-type.
Если бы я создавал калькулятор, я бы попытался использовать подход типа представления midp2. Это будет означать, что кнопки будут масштабироваться по ширине экрана. В ужасном непроверенном sudo-подобном коде я мог бы сделать:
//#style calcForm
Form calc = new Form( Locale.get( "calc.title" )); // See the use of J2ME Polish's [Localization][5]
calc.append( myInputField );
calc.append( plusOperator );
...
Где css для стиля может быть:
/* Simple white to black gradient background, using midp2 view type styling */
.calcForm {
padding: 2;
padding-left: 10;
padding-right: 10;
background {
type: vertical-gradient; /* See how I have added a little gradient background here*/
top-color: red;
bottom-color: black;
start: 25%;
end: 100%;
}
layout: horizontal-expand | horizontal-center | vertical-center;
view-type: midp2;
}
Использование метода TableItem будет означать, что кнопки не всегда могут умещаться на экранах меньшего размера, но вы можете найти его более быстрым в реализации. В ужасном непроверенном sudo-подобном коде я мог бы сделать:
TableItem calcButtons = new TableItem(4, 4); //16 block table 4 by 4
calcButtons.add(0,0, "1"); //Don't trust my 0,0 indexing I sometimes forget
....
calcButtons.addCommand(selectButton);
calcButtons.setItemCommandListener( myViewObj ); //Or whatever is managing the object, it could be the MIDlet
Form calc = new Form( Locale.get("calc.title"));
...
calc.append(calcButtons);
...
В любом случае, я надеюсь, что вы найдете что-то из этого полезным и сможете увидеть, как работают некоторые другие функции J2ME Polish.