Проблема выбора нескольких раскрывающихся списков Powerbuilder
Вот сценарий, с которым у меня проблемы: у меня есть 4 выпадающих списка (DDLB), каждый из которых имеет 4 одинаковых элемента (лошадь, собака, кошка, мышь). Пользователь может выбрать 1 и только 1 элемент из каждого DDLB, но он также может изменить свое мнение.
Например: они выбирают DOG в первом DDLB и CAT во втором DDLB. Когда они добираются до третьего DDLB, они все еще могут выбрать DOG, но если они это сделают, мне нужно отменить выбор DOG из первого DDLB. Таким образом, выбор одного элемента в одном раскрывающемся списке приводит к отмене выбора этого элемента во всех остальных раскрывающихся списках.
Я не совсем уверен, как идти о создании решения для этого сценария. Я использую PB12.5 и не PFC.
Заранее спасибо.
3 ответа
Если у вас всегда есть четыре элемента управления ddlb, вы можете создать цикл для проверки каждого из них, когда любой из них вызывает событие Modified. Вам нужно получить свойство Text для измененного элемента управления и сравнить его с каждым другим. Если он совпадает, вы можете использовать метод Clear, чтобы "очистить" запись, сделанную в других списках.
Вы должны сделать это программно. Вы должны разместить код в ItemChanged()
событие для каждого поля, а затем получить значения для каждого поля и проверить его с текущим значением поля.
Мы обычно обрабатываем этот вид проверки
а) элемент с измененным кодом, который выдает неблокирующее предупреждение о недействительных выборках (в этом случае мы обычно не предотвращаем изменения фокуса), и
б) предварительное сохранение подтверждения в окне /UO, что правила были соблюдены, и остановка сохранения, если нет.