Просто глядя на ваш код, я вижу несколько неправильных вещей в дополнение к тому, на что указал Миклос.
Вы используете getfellow от Java-композитора.Однако вам не следует делать это, поскольку ZK автоматически подключит компоненты для вас.Вам необходимо использовать шаблон MVC и расширить GenericForwardComposer.Вот пример:
Файл ZUL
<window title="composer5 example" border="normal" width="300px" apply="example.MyComposer">
<grid>
<rows>
<row>First Name: <textbox id="firstName"/></row><!-- forward is removed -->
<row>Last Name: <textbox id="lastName"/></row><!-- forward is removed -->
<row>Full Name: <label id="fullName"/></row>
</rows>
</grid>
</window>
Файл Java
package example;
public class MyComposer extends GenericForwardComposer {
private Textbox firstName;
private Textbox lastName;
private Label fullName;
@Override
public void doAfterCompose(Component comp) throws Exception {
// TODO Auto-generated method stub
super.doAfterCompose(comp);
}
//onChange event from firstName component
public void onChange$firstName(Event event) {
fullName.setValue(firstName.getValue()+" "+lastName.getValue());
}
//onChange event from lastName component
public void onChange$lastName(Event event) {
fullName.setValue(firstName.getValue()+" "+lastName.getValue());
}
}
Для получения дополнительной информации вы можетеобратитесь к документации
С функцией, чтобы получить выбранный элемент, почему бы просто не использовать Combobox's getSelectedItem ?Даже если вы используете Listbox, как предложил Миклос, вы также можете использовать ту же функцию.
Что касается установки выбранного элемента, вам необходимо обновить версию ZK до последней.У меня нет проблем с этим.