Процедура SetCurRow |
Устанавливает текущую позицию в иерархическом списке на экране. Текущая запись в таблице не изменяется.
procedure SetCurRow (aBrowse : longInt; aRow : integer);
aBrowse : londInt - имя browse в описании интерфейса.
aRow : integer - номер текущей позиции на экране.
const cmSyncBrowse = 3130; end; interface syncroTest 'Synchro Test' EscClose; show at (,,,34); create view syncroTest as select X$Files.* from X$Files; var oldCurRow : integer; panel files; table x$files; browse files; show at (,,20,); fields x$files.xf$name; end; // browse files end; // panel files tabbedSheet tsFiles; show at (21,,,); browse br1 'First'; fields x$files.xf$name; end; // browse br1 browse br2 'Second'; fields x$files.xf$name; end; // browse br2 end; handleEvent cmInit : oldCurRow := -1; // Текущая позиция не известна cmChangeTabbedSheetFormat : { // Запомнить позицию oldCurRow := GetCurRow (files); PutCommand (cmSyncBrowse); } cmSyncBrowse : { if (oldCurRow >= 0) { // Если позиция корректная, // установить позицию ... SetCurRow (br1, oldCurRow); SetCurRow (br2, oldCurRow); // ... и пересканировать. RescanPanel (#x$files); } } end; // handleEvent End. // interface syncroTest