Страница 1 из 1

Аналог события CmInit

Добавлено: 25 сен 2003, 00:30
Juve
Уважаемые мастера,помогите советом.
Хочу на CmInit интерфейса повесить поиск и позиционирование на требуемую запись в запускаемом интерфейсе. Похоже что к моменту срабатывания CmInit таблица ещё не "активирована" и вообще интерфейс только зарождается...Есть ли другое (более действенное) событие (типа OnShow) которое происходит почти после полной загрузки всякой всячины на форме. Или, может подскажете как качественно покрасивше сделать...

Re: Аналог события CmInit

Добавлено: 25 сен 2003, 07:44
Goblin
В cmInit все прекрасно работает, в момент обработки этого события уже сформирован сам интерфейс, построена логическая таблица и проинициализированы значения по умолчанию используемых в и-фейсе переменных - только и-фейс еще не виден ("Суслика видишь?" - "Нет" - "И я нет. А он есть" Сopyright by ДМБ :) )...

видимо, что-то не так делаешь ...

скорее всего различаются индексы - используемый в логической таблице для отображения и используемый для поиска,
в таком случае поиск придется делать перебором , что в некоторых случаях не есть хорошо ...

Логическую таблицу и cmInit показал бы - может и разобрались бы ...

Re: Аналог события CmInit

Добавлено: 26 сен 2003, 11:03
ecasoft
В Галактике при вызове практически всех базовых интерфейсов происходит позиционирование на нужную запись именно в cmInit. Nrec передается в параметрах интерфейса.

Пример:

cmInit:
{
.............
if GetFirst KatSopr where
(( curNrec == KatSopr.Nrec )) = tsOk {};
...............

}

КатSopr не должна участвовать в правой стороне подцепки главного create view...иначе этот оператор не будет работать.

Да..смInit ГЛАВНОГО ОБРАБОТЧИКА ИНЕРФЕЙСА..а то еще есть смInit окна, панели и т.д. Может Вы не в тот пишите, тогда не будет позиционироваться тоже.

C наилучшими пожеланиями, Игорь