Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];

Вниз

Как правильно завершить работу приложения.   Найти похожие ветки 

 
Guitar ©   (2004-12-23 11:35) [0]

Если приложение состоит из нескольких форм. И в конце работы используется одна из дочерних форм. Родительская спрятана
form1.Hide;

То как правильно завершить работу всего приложения?


 
Александр Иванов ©   (2004-12-23 11:37) [1]

Закрыть главнуцю форму.

Form1.Close;


 
Jay1982 ©   (2004-12-23 11:41) [2]

Application.Terminate


 
Guitar ©   (2004-12-23 12:02) [3]

Я тоже так думал.
Я делаю эти команды на событие

procedure TForm1.FormDestroy(Sender: TObject);
begin
form1.close;
end;


И без разницы что писать
application.Terminate;
form1.destroy;
form1.close;


В итоге приложение не выходит. А просто Form2 исчезает и Delphi виснет. Дело в следующем. Так как я сделал Form1.hide то её просто не видно. И поэтому виснет. Когда я убрал из кода Form1.hide , то при закрытии Form2 появляется Form1 и её я вручную закрываю. Только в этом случае всё приложение выходит корректно.

А мне то нужно, чтобы первой формы видно не было. Поэтому делаю Form1.hide.

И вот не знаю как правильно завершить всё приложение. (((
Может я не на то событие Form2 код пишу? На какое событие правильно писать?


 
Guitar ©   (2004-12-23 12:05) [4]

Прошу прощения, я в коде, что выше, ошибку допустил. Правильнее

procedure TForm2.FormDestroy(Sender: TObject);
begin
form1.close;
end;


Вопрос остался.


 
Плохиш ©   (2004-12-23 12:06) [5]


>Может я не на то событие Form2 код пишу? На какое событие правильно писать?

Интересно, а на какое событие Form2 ты код пишешь?
OnClose, OnCloseQuery.


 
Александр Иванов ©   (2004-12-23 12:10) [6]

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Form1.Close;
end;


 
Guitar ©   (2004-12-23 12:37) [7]

4 Александр Иванов
Вы правильно написали. Если не сложно скажите какое событие наступает раньше close или destroy. И в чём суть каждого? Чем они отличаются? В чём конкретно моя ошибка, что я не понял?

4 Плохиш
я писал
procedure TForm2.FormDestroy(Sender: TObject);
begin
form1.close;
end;


 
Guitar ©   (2004-12-23 12:37) [8]

4 Александр Иванов
Вы правильно написали. Если не сложно скажите какое событие наступает раньше close или destroy. И в чём суть каждого? Чем они отличаются? В чём конкретно моя ошибка, что я не понял?

4 Плохиш
я писал
procedure TForm2.FormDestroy(Sender: TObject);
begin
form1.close;
end;


 
Jay1982 ©   (2004-12-23 12:48) [9]

Напиши Halt



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

Форум: "Основная";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 2.059 c
4-1100691991
H.A.Z.A.R.D.
2004-11-17 14:46
2005.01.09
How Create a System Service [Install Service] (создать службу)


3-1102494574
Fedor
2004-12-08 11:29
2005.01.09
Как лучше записи копировать?


3-1102584798
Malevia
2004-12-09 12:33
2005.01.09
Перемещение по датасету в DBGridEx


4-1101188780
NetDigger
2004-11-23 08:46
2005.01.09
Мониторинг процессов


3-1102496164
msguns
2004-12-08 11:56
2005.01.09
Извлечение метаданных. Документация





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский