Панель Назад В начало Вперед

Панель служит для объединения нескольких областей ввода и обработчиков событий с одинаковыми корневыми таблицами. Хотя использование панелей не является обязательным, тем не менее рекомендуется все области ввода, относящиеся к одной таблице, включать в одну панель. Обработку табличных событий следует выполнять в соответствующей панели.

<панель> ::= panel <имя> [;]
		 [<координаты>]
		 [<лист>]
		 { <таблица>
		 | <экран>
		 | <окно перехода>
		 | <обработчик_событий> }
		 end [;]

Если видимые элементы включены в панель, в качестве значений по умолчанию для координат и корневой таблицы используются соответствующие значения из панели.

В обработчик событий handleEvent панели поступают события, если корневая таблица панели является текущей корневой таблицей. Если в нескольких окнах описаны панели с одинаковыми корневыми таблицами, то поток событий направляется в обработчик событий каждой из этих панелей в порядке их описания.

Пример:

panel projects;
  table projects;
  screen projScr;
	fields Project_name;
<<
Проект .@@@@@@@@@@@@@@@@@@@@@
>>
  end;
  browse projList;
	fields Project_name;
  end;
  handleEvent
	cmInsertRecord: insert current Project;
	cmDeleteRecord: delete current Project;
	cmUpDateRecord: update current Project;
	cmPass: SetFormat(projList);
  end;
end;