Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

В каком случае выполняется событие OnShow при создании формы?


Denis ©   (2004-08-11 13:35:00) 

Сегодня пришлось переделывать форму под иные справочники,оставив старый интерфейс. Сделал копию файлов исходной формы, обработал и подключил в проект, причем код не изменял - только запросы и все вытекающее...
Для открытия формы выполняю следующий код:
if fmMatCardM = nil
then
 try
  Application.CreateForm(TfmMatCardM, fmMatCardM);
 except
   On E:Exception do ShowMessage('Невозможно выполнить команду!');
 end;
fmMatCardM.TreeFlag:=true;
fmMatCardM.FormStyle:=fsMDIChild;

Так вот при Create начинает выполняться событие OnShow, что в данном случае при TreeFlag = false приводит к AV.

А вот код вызова исходной формы:
if fmMatCard = nil
then
try
 Application.CreateForm(TfmMatCard, fmMatCard);
except
   On E:Exception do ShowMessage('Невозможно выполнить команду!');
end;
fmMatCard.TreeFlag:=true;
fmMatCard.FormStyle:=fsMDIChild;

Здесь Create выполняется БЕЗ обработки OnShow.
Что может быть причиной этой разницы?


Denis   (2004-08-11 13:59:00) [1]

>Плохиш ©  
черт... true
я его ставил false при FormStyle=fsMDIChild  - тот же эффект был и я его оставил в покое. А при fsNormal - все работает как надо
Спасибо.


Плохиш   (2004-08-11 13:43:00) [2]

>Denis ©   (11.08.04 13:35)

Начинаем гадать: Visible у fmMatCardM = true?


Ega23   (2004-08-11 13:42:00) [3]

Application.CreateForm(TfmMatCard, fmMatCard);

Application.CreateForm(TfmMatCardM, fmMatCardM);

Классы разные.


Наверх

Титульная страница Поиск, карта сайта Написать письмо