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

Вниз

Закрытие всех форм приложения   Найти похожие ветки 

 
volser   (2004-01-11 00:48) [0]

Как можно закрыть все формы приложения?
Вызывая при этом метод Close.


 
Jenaxx   (2004-01-11 02:22) [1]

Сэр вы шутник, это первая команда в любой книге по программированию.Что лень серьезная преграда?


 
VMcL   (2004-01-11 04:04) [2]

>> volser (11.01.04 00:48)

Ну просто смешной код, блин.

var
I: Integer;
begin
for I := 0 to Screen.FormCount - 1 do
begin
Screen.Forms[I].Close;
end;
end;


 
Думкин   (2004-01-11 09:01) [3]

> [2] VMcL © (11.01.04 04:04)

Я бы все таки цикл повернул на убывание.


 
KSergey   (2004-01-11 12:47) [4]

А может и вовсе в цикле не I надо, а всегда 0... Но не уверен, пробовать надо
Хотя с другой стороны, если форма сама при Close не уничтожается - то индексы, конечно, менять надо...


 
AMogil   (2004-01-11 13:43) [5]

Наверно вернее всего:


while Screen.FormCount > 0 do
begin
Screen.Forms[0].Close;
Application.ProcessMessages;
end;


 
KSergey   (2004-01-11 13:59) [6]

> [5] AMogil © (11.01.04 13:43)
> Наверно вернее всего:

Это почему? При закрытии форма не обязательно уничтожается вообще-то...


 
chudaks   (2004-01-11 14:18) [7]

Что именно нужно просто закрыть или уничтожить?
Если закрыть не уничтожая форму то тратитьтся ресурс.
лучше использовать процедурку FREE.
Если хочешь закрыть все приложение закрывая при этом и формы можно воспользоваться Application.Terminate.


 
Думкин   (2004-01-11 15:13) [8]

Если мы закроем ВСЕ формы, то закроем и главную - соответственно и приложение может окончиться(в стандартном развитии).

> [6] KSergey © (11.01.04 13:59)
Не обязательно - но вполне возможно.


 
Anatoly Podgoretsky   (2004-01-11 15:25) [9]

Application.MainForm.Close;


 
AMogil   (2004-01-11 16:21) [10]

KSergey © (11.01.04 13:59) [6]
>Это почему? При закрытии форма не обязательно уничтожается >вообще-то...

Да, но необходмо полностью обработать все события, которые получила форма.


 
AMogil   (2004-01-11 16:31) [11]

С учет сказанного Думкин © (11.01.04 15:13) [8] наверное обудет:


while Screen.FormCount > 0 do
if Screen.Forms[0]<>Application.MainForm then
begin
Screen.Forms[0].Close;
Application.ProcessMessages;
end;


Anatoly Podgoretsky © (11.01.04 15:25) [9]
>Application.MainForm.Close;
Он просил закрыть все формы (а не спросил "как закрыть приложение?"), поэтому наверно ему нужно закрыть все кроме главной.

Хотя пора бы призвать volser к ответу - что же он хочет?


 
Anatoly Podgoretsky   (2004-01-11 17:06) [12]

AMogil © (11.01.04 16:31) [11]
Это твоя вольная интерпритация, а в вопросе одназначно сказано закрыть все формы приложения


 
AMogil   (2004-01-11 17:58) [13]

Anatoly Podgoretsky © (11.01.04 17:06) [12]
>Это твоя вольная интерпритация, а в вопросе одназначно сказано закрыть все формы приложения

Согласен. Но какой в этом смысл? Тут ты либо закрываешь приложение, либо закрываешь все окна кроме главного.


 
Anatoly Podgoretsky   (2004-01-11 18:00) [14]

Наверно он находится в форме Х и не хочет закрывать все формы по очереди.



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

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

Наверх




Память: 0.47 MB
Время: 0.006 c
1-72750
Voice
2004-01-14 12:01
2004.01.23
Путь к файлу из переменной типа file of...


1-72712
Yura
2004-01-09 15:41
2004.01.23
Web-сервис


1-72803
download
2004-01-12 22:06
2004.01.23
Удаление отрицательных элементов из массива


14-72927
Knight
2004-01-01 02:06
2004.01.23
Вот говорят, как год встретишь, так его и проведёшь...


1-72833
Chicago
2004-01-12 10:21
2004.01.23
Вставить форму





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский