У меня есть это поле со списком, которое я хотел бы включить или отключить в зависимости от выбора «SDO/OD» (закодировано как 10 в базе данных) в предыдущем поле со списком. Когда я использую следующий код, он дает мне выпадающий список, но для каждого выбора. Я хочу, чтобы выпадало только тогда, когда выбрано «SDO/OD». В противном случае отключите поле со списком, но разрешите данным передавать нуль для записи. Я не думаю, что он читает слушателя. Мой вопрос, почему это происходит? Как мне обращаться с Listerner для решения такой задачи?Выбор JavaChange Listener для поля со списком
fcbRole.addSelectionChangedListener(new SelectionChangedListener<ModelData>()
{
@Override
public void selectionChanged(SelectionChangedEvent<ModelData> se)
{
fcbOfficeRegion.clearSelections();
fcbOfficeRegion.getStore().clearFilters();
if(fcbRole.getValue().equals("SDO/OD") && se.getSelectedItem() != null)
{
fcbOfficeRegion.enable();
fcbOfficeRegion.setValueField(se.getSelectedItem().get("strValue").toString());
StoreFilter<ModelData> sfRole = new StoreFilter<ModelData>()
{
@Override
public boolean select(Store<ModelData> store,
ModelData parent, ModelData item,
String property) {
String name = item.get("filterDepts");
name = getScc().cleanString(name.toLowerCase());
if (name.contains("(" + fcbRole.getValue().get("strValue") + ")"))
{
return true;
}
return false;
}
};
fcbOfficeRegion.getStore().addFilter(sfRole);
fcbOfficeRegion.getStore().applyFilters("fcbOfficeRegion");
}
else
Я не понимаю вашего вопроса. Вы пытаетесь включить/отключить поле со списком на основе пользовательского выбора этого комбинированного блока? – Dodd10x