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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.006 c
14-72943
Volkov
2003-12-31 13:42
2004.01.23
Всех с новым годом!!!


4-72967
DillerXX
2003-11-19 15:16
2004.01.23
Как мне на любое нажатие текстовых клавиш на клавиатуре выполнять


14-72933
Nik
2003-12-31 20:43
2004.01.23
форматирование дисков больше 80 гигов


14-72910
sancho
2004-01-01 22:49
2004.01.23
Касперский усердно работает..


1-72753
Anton.
2004-01-13 16:43
2004.01.23
TGetExtentsFunc = function(Index: Longint): Integer of object;





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