Picker & GUI Builder, как установить тип

Поскольку свойство типа для объектов средства выбора не отображается в GUI Builder, как правильно установить тип с помощью кода для объекта средства выбора, размещенного с помощью GUI Builder?

Я пытался сделать это в различных методах событий формы (в первую очередь initVars, onCreateMain и beforeMain), но безуспешно. this.findPicker() возвращает null в этих ситуациях (это не уникально для сборщика, this.findAnything терпит неудачу в тех же самых методах).


person Jay    schedule 31.10.2016    source источник


Ответы (1)


Я бы предложил перейти на новый конструктор графического интерфейса пользователя. Кажется, ошибка тоже есть, и вы должны зарегистрировать эту ошибку.

Независимо от обоих построителей графического интерфейса вы можете просто вызвать setType() в конструкторе сразу после вызова инициализации в качестве обходного пути или в событии beforeForm для старого построителя графического интерфейса.

person Shai Almog    schedule 01.11.2016
comment
Используя новый конструктор графического интерфейса, компонент Picker объявляется как кнопка. Я должен изменить это вручную в сгенерированном коде на spinner.Picker, чтобы получить доступ к методу setType. Это тоже проблема? Или я должен получить средство выбора даты без изменения сгенерированного кода? - person Jay; 01.11.2016
comment
Простой тест показывает, что модифицировать сгенерированный код — плохая идея, поскольку любые будущие модификации с помощью GUI Builder записывают это изменение. Кажется, нет никакого способа вызвать setType для объекта выбора кнопок, созданного новым конструктором графического интерфейса. - person Jay; 01.11.2016
comment
Я думаю, вам нужно сообщить об этом, Чен решил много проблем с GUI за последние пару недель: github.com/codenameone/CodenameOne/ - person Shai Almog; 02.11.2016