Вниз
Скачать: CL | DM;

Как правильно закрыть форму   Найти похожие ветки 

← →
snake1977   (2004-01-16 10:21) [0]

Здравствуйте! Подскажите пожалуйста, я посмотрел пример создания модальной формы из статьи о создании ресурсов в DLL, на этом сайте. там написано что если используется MDIChild то необходимо "...запомнить дескриптор формы, чтобы его потом использовать..." , но как его запомнить и как использовать ничего не сказано :((
Подскажите, как же всетаки правильно закрыть MDIChild окно, созданное и открытое из динамически загруженной DLL. Закрываться оно должно самой DLL перед выгрузкой.


← →
Семен Сорокин ©   (2004-01-16 10:25) [1]

как же всетаки правильно закрыть MDIChild окно
Close?


← →
snake1977   (2004-01-16 10:32) [2]

Закрывает, тока при Close, вылетает Access Violation


← →
Anatoly Podgoretsky ©   (2004-01-16 10:38) [3]

У тебя где то ошибка в программе.


← →
snake1977   (2004-01-16 10:41) [4]

это понятно что где то ошибка, я так подозреваю что я не правильно открываю MDIChild окно в DLL.
Посмотрите правильно лия это делаю :
Procedure Start(App:TApplication; Frm:TForm); export; StdCall;
var DllProc: Pointer;
Begin
Started:=true;
Application:=App;
PrForm:=TPrForm.Create(Frm);
PrForm.Show;
End;

Procedure Stop; export; StdCall;
Begin
ProtForm.Close;
End;


← →
Семен Сорокин ©   (2004-01-16 10:49) [5]

передавай не объекты TApplication и TForm, а их дескрипторы
Application.Handle и MainMDIForm.Handle.
Переприсваивай соответсвенно дексрипторы.


← →
snake1977   (2004-01-16 11:08) [6]

передал !!! тепрь вылетает при создании формы :(((((


← →
alex_*** ©   (2004-01-16 11:15) [7]

А Owner у PrForm теперь кто?


← →
Семен Сорокин ©   (2004-01-16 11:17) [8]

snake1977 (16.01.04 11:08) [6]
передал !!! тепрь вылетает при создании формы :(((((

приведи код, строчку где вылетает и ошибку.


← →
Anatoly Podgoretsky ©   (2004-01-16 11:21) [9]

Какие то странные глобальные переменные. Неизвестно что это такое, где они, открывается одно, закрывается другое.
Другими словами у тебя не одна ошибка в программе, а куча.


← →
alex_*** ©   (2004-01-16 11:24) [10]

Кстати насчет глоб. переменных - обрати на это внимание, не создается ли по PrForm несколько объектов.


← →
Digitman ©   (2004-01-16 11:25) [11]

а где здесь хоть какое-то упоминание о том, что форма показывается модально ?

визуализация формы в мод.режиме осуществляется вызовом ShowModal

и, как помнится, MDIChild-форму нельзя показать модально

вот фрагмент тела метода ShowModal :

if Visible or not Enabled or (fsModal in FFormState) or
( FormStyle = fsMDIChild) then
raise EInvalidOperation.Create(SCannotShowModal);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
3-93375
--none--
2003-12-31 16:29
2004.01.29
ADOTable


7-93712
dron
2003-11-12 12:47
2004.01.29
Как программно создать переменную окружения


9-93319
Dead Moroz
2003-07-01 03:42
2004.01.29
Движок для текстового 3D_Shooter-а


6-93620
johny
2003-11-21 08:36
2004.01.29
Заполнение формы загруженной в webbrowser


1-93495
Татьяна
2004-01-19 13:46
2004.01.29
Размер ComboBox-а




   Наверх