Панель с вкладками |
Панелью с вкладками называется панель, одна из областей ввода которой состоит из нескольких страниц, переключаемых посредством клавиатуры (клавиша Tab, комбинация клавиш Shift+Tab) или манипулятора "мышь".
Для описания панели с вкладками используется следующая синтаксическая конструкция:
<панель с вкладками> ::= tabbedsheet [<позиция переключателя>] <имя> [;] [<координаты>] [<лист>] { <таблица> | <экран> | <редактор мемо-поля> | <окно перехода> | <обработчик событий> } end [;]
Позиция переключателя определяет положение лепестков закладок внутри окна: вверху, внизу, слева или справа.
<позиция переключателя> ::= top | bottom | left | right
По умолчанию лепестки закладок располагаются вверху.
Использование вертикального расположения лепестков закладок может приводить к неадекватному отображению позиции активной страницы. Для того чтобы этого избежать, необходимо выполнять следующие требования:
1. выбирать высоту интерфейса таким образом, чтобы по длине панели с вкладками могли разместиться все элементы страниц;
2. исключать такое поведение интерфейса, при котором переход от одной страницы к другой может быть заблокирован.
Пример интерфейса с закладками.
interface tabCtrl 'Пример закладок' ('это закладки'); create view as select * from asupmemo; tabbedSheet tabbed // позиция переключателя - здесь screen format_1 'Экран 1'; fields NRec : noProtect; << .@@@@@@@@@@@@@@@@@@@ >> end; // screen format_1 screen format_3 'Экран 2'; fields NRec : noProtect; atl_LastDate : noProtect; << .@@@@@@@@@@@@@@@@@@@ .@@@@@@@@@@@@@@ >> end; // screen format_3 browse format_2 'Таблица'; fields atl_LastDate 'дата' : noProtect; atl_LastTime 'время' : noProtect; atl_OriginOffice 'офис' : noProtect; filialNo 'филиал' : noProtect; end; // browse format_2 text comment 'Мемо поле'; end; // tabbedSheet handleEvent cmUpdateRecord : modifier update current asupmemo; cmInsertRecord : modifier insert current asupmemo; cmDeleteRecord : modifier delete current asupmemo; cmOk : PutCommand (cmDefault); end; end.
Внешний вид закладок из примера с разными значениями позиции переключателя
Рис. 13 Вариант "tabbedSheet tabbed"
Рис. 14 Вариант "tabbedSheet bottom tabbed"
Рис. 15 Вариант "tabbedSheet left tabbed"
Рис. 16 Вариант "tabbedSheet right tabbed"