Расскажу о создании мастеров заполнения (Wizards) в Lotus Notes при помощи слоев (Layers). Давно хотел добраться до этого и попробовать, но все как-то не представлялось возможности...до недавнего времени.
Итак, освоив несколько это дело, спешу поделиться.
1. Создаем форму под новый диалог. Чтобы все было в рамках приличия - делаем эту саму рамку, куда помещаем количество слоев, равное количеству шагов в мастере.
2. Скрывать и показывать определенный шаг будем скрытием соответствующих слоев (обычной формулой скрытия). Нужно иметь ввиду, что у объекта Layer Anchor нет свойств скрытия, поэтому нужно работать со свойством текста, расположенный в том же параграфе, что и объект.
3. Внутри слоя оформляем каждый шаг. Выравниваем, чтобы красиво и каждый шаг не прыгал относительно другого. Для этого редактируем ширину слоя (под основную табличку, при этом не забываем о высоте основной таблички, чтобы слой влез в нее); высоту слоя устанавливаем Auto.
4. Совмещаем слои. Для перемещения по слоям и их свойствам удобно пользоваться Layer Tree
5. Кнопки переходов и закрытия диалога - свои. При переходах проставляем значения соответствующих полей.
![]() |
Формула в кнопке "Назад" 3-го шага |
6. Вызываем ws.DialogBox без системных кнопок и симпатичный мастер готов. Далее можно усложнять добавляя обработку, LotusScript на событиях и пр.
К сожалению, ограничиваюсь только скриншотами, а не примером базы, но делюсь ссылкой, где можно ознакомиться с основами работы со слоями и скачать базу на растерзание: 5 differrent uses for layers in Lotus Notes
Stay tuned!
Комментарии
Отправить комментарий