• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Как обновить чекбокс

  • Автор темы nvyush
  • Дата начала
N

nvyush

Здравствуйте все!
В клиенте Лотус заказчик хочет следующее: на форме два чекбокса, верхний с одной позицией "выделить все", ниже чекбокс с позициями типа "флаг1" : "флаг2" : ... : "флагН". При выборе "выделить все" выделяются все позиции в нижнем чекбоксе, при сбросе любой позиции в нижнем чекбоксе сбрасывается верхний чекбокс. Onchange не подходит — поля обновляются после потери полем фокуса. Попробовал на InputTranslation, но поймал граблю: изменение нижнего чекбокса не обновляет верхний чекбокс, хотя значение и устанавливается. Проверял так — ниже чекбокса с флагами разместил cfd чекбокс c формулой = верхний чекбокс. Так вот, при обновлении верхнего чекбокса остальные обновляются как положено, при обновлении среднего чекбокса, нижний обновляется как нужно, а верхний не реагирует! Как победить не знаю. Обращаться за помощью к свингу из-за такой ерунды ужасно не хочется. Есть идеи?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
размещаем на форме скрытое CFD, кот. вычисляет нужное состояние, анализируя значения чекбоксов...
а чекбоксы берут значение из него (по к-л условию и вычисляют "себя")
поле располагаем "выше всех"
 
N

nvyush

Medevic
Спасибо, получилось. Что-то я сам не догадался покопать в данном направлении, всё на собаках да на собаках... :lovecodeby:
lmike
Пробовал этот вариант, но чекбоксы должны быть редактируемыми. "Вычислять себя" получилось только в плане списка выбора, причём список обновлялся (напр., вместо "выделить все" появлялось "выбрать все"), но само значение — нет.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
чекбоксы и будут редактируемые
а поле CFD - может даже рулить чекбоксами (@SetField)
а списки чекбоксы могут брать тоже из CFD (динамически менять контент)
 
N

nvyush

чекбоксы и будут редактируемые
а поле CFD - может даже рулить чекбоксами (@SetField)
а списки чекбоксы могут брать тоже из CFD (динамически менять контент)
Примерно так и делал, но через InputTranslation чекбоксов. В принципе, на собаках тоже заработало, но оставил скриптовый вариант, поскольку всё равно скриптовым событием Onfocus фиксирую активное поле.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!