Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.25;
Скачать: CL | DM;

Вниз

Закрытие формы MDIChild программным методом   Найти похожие ветки 

 
Jaxtor   (2002-04-12 11:21) [0]

Подскажите, пожалуйста, как программно закрыть форму MDIChild.
Она создается при нажатии кнопки Create Window типа TButton на
главной форме c помощью конструктора TMDIChildForm.Create(Application).
Нажав на кнопку закрытия окна MDIChild, форма закрывается
с помощью Action:=caFree. А другим способом - например,
чтобы эта форма закрывалась при нажатии на другую кнопку
Close Window типа TButton на главной форме не получается.
Пытался закрыть форму MDIChild вызвав метод, который выполняется при
нажатии кнопки закрытия этого окна :
TMDIChildForm.MDIChildFormClose(Sender,Action).
Выдается ошибка компиляции. А метод MDIChildForm.Сlose вызывает исключительную
ситуацию. MDI wizard не помогает, т.к. у меня
большая программа (я описал только ядро проблемы) и переписывать
ее через этот визард займет очень много времени. Я добавил деструктор
Free, а затем метод Close. После Close появл. искл. ситуация.


 
Игорь Шевченко ©   (2002-04-12 11:33) [1]

День добрый,

Почему не получается, получается. Хоть все MDI-формы можно закрыть, к примеру,


while ActiveMDIChild <> nil do begin
ActiveMDIChild.Release();
Application.ProcessMessages();
end;


Если надо закрыть конкретную форму, то для начала ее надо найти,
а потом выполнить myMdiChildForm.Close().

С уважением,


 
Jaxtor   (2002-04-12 11:38) [2]

Спасибо за помощь!
Все работает.



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

Текущий архив: 2002.04.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
3-80780
слава
2002-04-04 15:02
2002.04.25
Перевод таблиц из Delphi в Access


1-80862
Vinivor
2002-04-11 12:10
2002.04.25
Почему не работает?


14-81054
Свой
2002-03-07 15:33
2002.04.25
---|Ветка была без названия|---


6-81018
AlexRush
2002-02-14 20:21
2002.04.25
проблемка с NetServerEnum


3-80765
IronHawk
2002-04-02 11:34
2002.04.25
Приветствую Мастеров ! Как удалять одинаковые строки в базе 2 ?