![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
формы в dll [D7, XP]
Sw © (2008-10-27 13:11:00)из чужого приложения запускаю dll
создается форма с ComboBox и на CloseUp в зависимости от выбранного значения создается другая форма:
case Id of
1: with TfmEnerg.Create(Application) do
try ShowModal; finally Free; end;
35:with TfmEnergsb.Create(Application) do
try ShowModal; finally Free; end;
..................
допустим на выбранной форме заполнили все реквизиты и нужно закрыть обе формы. Делаю так:
ModalResult:=mrOk; fmMain.Close;
выдает 'access violation'
Помогите, пожалуйста, разобраться
Сергей М. (2008-10-27 13:56:00) [1]
> мне бы главную закрыть
По вызову Close Главная как раз и закроется, если текущим исполняемым методом является метод этой самой главной формы.
Sw (2008-10-27 13:47:00) [2]
> Сергей М. © (27.10.08 13:37) [6]
if mr = mrOk then Close; простите, только fmMain.Close;// мне бы главную закрыть
Сергей М. (2008-10-27 13:37:00) [3]
> все равно выдает 'access violation'
Какая конкретно строчка моегокода вызывает AV ?
Palladin (2008-10-27 13:35:00) [4]хм... а зачем ты главную закрываешь из обработчика вызываемой? в ней самой (главной) то не судьба?
Sw (2008-10-27 13:33:00) [5]
> Сергей М. © (27.10.08 13:14) [1]
все равно выдает 'access violation'
> Palladin © (27.10.08 13:16) [2]
выбранная форма закрывается, а вот главная нет (из которой ее вызвали) - нет (обе модальные)
Palladin (2008-10-27 13:27:00) [6]но не сразу после присвоения, а после того как событие отработает полностью
Palladin (2008-10-27 13:16:00) [7]присвоение значениня ModalResult'у автоматически закрывает форму, вызванную ShowModal
Сергей М. (2008-10-27 13:14:00) [8]var
mr: Integer;
....
case Id of
1: with TfmEnerg.Create(Application) do
try
mr := ShowModal;
finally
Free;
if mr = mrOk then Close;
end;
..................