![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как выйти из программы [D7, XP]
Kusma © (2009-08-26 16:42:00)Здравствуйте програмисты делал программу смены одного изображения на другое используя функцию AlphaBltnd и столкнулся с проблемой во время выполнения программы не работает клавиатура, чтобы выйти из программы. Как выйти из програмы?
Сергей М. (2009-08-26 20:57:00) [1]i := 0;
if FindFirst(..) = 0 then
repeat
Inc(i); // i-я итерация
.. // здесь твори с i-м файлом все что захочешь
Application.ProcessMessages; // мышь и клава тоже хотят !
until (not Findnext(..) <> 0) or (NeedBreak = True) or Application.Terminated
Сергей М. (2009-08-26 20:27:00) [2]
> Anatoly Podgoretsky © (26.08.09 20:22) [21]
Мне лень нагнуться.
Сергей М. (2009-08-26 20:25:00) [3]http://www.delphimaster.ru/cgi-bin/forum.pl?id=1251175537&n=5
Вы с Мамедовым случаем не знакомы ?
То ведь тоже заявил а-ля "ты мне не дал код, значит ты не знаешь, значит ты говновод, а я Д'Артьаньян"
Anatoly Podgoretsky (2009-08-26 20:22:00) [4]> Kusma (26.08.2009 20:03:18) [18]
А поцеловать?
Сергей М. (2009-08-26 20:19:00) [5]<
> Еслы бы это было не так то ты бы уже давно ответил.
Щас.
Разрешите бегом ?
Kusma (2009-08-26 20:11:00) [6]> да, проглядел.
> там в чем фишка-то? прокрутили все файлы в папке и опять пошли по новой?
> в любом случае, при бесконечном цикле без проверки какого-то флажка из программы не выйдешь.
> Ибо она на 100% занята циклом, а очередь сообщений не проверяет
Абсолютно с вами согласен, вот пример похожей программы, только зделаной по принцыпу смешивания цветов: http://kusmich0024.narod.ru/Pictopic.rar
Kusma (2009-08-26 20:03:00) [7]> Те. набор незнакомых тебе букоф ?
> Ну хорошо. а как вообще ты реагируешь на "остановки компилятора", когда нет морковки и не у кого спросить о причинах остановки ?
Ты сам не знаешь ответа на мой вопрос. Еслы бы это было не так то ты бы уже давно ответил.
Сергей М. (2009-08-26 19:53:00) [8]Те. набор незнакомых тебе букоф ?
Ну хорошо. а как вообще ты реагируешь на "остановки компилятора", когда нет морковки и не у кого спросить о причинах остановки ?
Kusma (2009-08-26 19:48:00) [9]> на строке if key=#27 then Terminated := true; компилятор
> останавливается
> А ты ему пучок морковки повесь перед носом.
> У тебя слово "property" не вызвало никаких сомнений ?)
Чесно говоря нет.
clickmaker (2009-08-26 19:30:00) [10]> Ты на код посмотри внимательней.
да, проглядел.
там в чем фишка-то? прокрутили все файлы в папке и опять пошли по новой?
в любом случае, при бесконечном цикле без проверки какого-то флажка из программы не выйдешь.
Ибо она на 100% занята циклом, а очередь сообщений не проверяет
Сергей М. (2009-08-26 19:26:00) [11]
> на строке if key=#27 then Terminated := true; компилятор
> останавливается
А ты ему пучок морковки повесь перед носом.
У тебя слово "property" не вызвало никаких сомнений ?)
Сергей М. (2009-08-26 19:04:00) [12]
> програмисты делал программу
Как- то даже не прилично)
Чуть ли не
Мы, божьей милостью Программист, делали программу..
Kusma (2009-08-26 17:41:00) [13]> while not Terminated do
> Begin
> ...
> Application.ProcessMessages;
> end;
> procedure TNewForm.NewFormKeyPress(Sender: TObject; var Key: Char);
> begin
> if key=#27 then Terminated := true;
> end;
За ответ спасиба. Но на строке if key=#27 then Terminated := true; компилятор останавливается[Error] Unit1.pas(281): Cannot assign to a read-only property
> а вообще, цикл какой-то странный.
> Почему, чтобы "Надо найти еще один файл", опять вызывается FindFirst? а не FindNext? при этом patch не меняется.
Ты на код посмотри внимательней.
clickmaker (2009-08-26 17:24:00) [14]а вообще, цикл какой-то странный.
Почему, чтобы "Надо найти еще один файл", опять вызывается FindFirst? а не FindNext? при этом patch не меняется. Кстати, правильно Path
clickmaker (2009-08-26 17:20:00) [15]> Пробовал. Не выходит
да ладно.
while not Terminated do
Begin
...
Application.ProcessMessages;
end;
procedure TNewForm.NewFormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#27 then Terminated := true;
end;
Kusma (2009-08-26 17:18:00) [16]> а что, выход из цикла вообще не предусмотрен?
> Application.ProcessMessage в цикл и какой-то флажок, его останавливающий
Пробовал. Не выходит.
Dennis I. Komarov (2009-08-26 17:13:00) [17]
> Anatoly Podgoretsky © (26.08.09 17:08) [7]
>
Он тоже не всегда предусмотрен...
Anatoly Podgoretsky (2009-08-26 17:08:00) [18]> Dennis I. Komarov (26.08.2009 17:05:06) [6]
Но против лома нет приема, всегда можно выдернуть шнур из розетки.
Dennis I. Komarov (2009-08-26 17:05:00) [19]
> Anatoly Podgoretsky © (26.08.09 17:03) [5]
>
Ну такая программа тоже...
Anatoly Podgoretsky (2009-08-26 17:03:00) [20]> Dennis I. Komarov (26.08.2009 16:48:01) [1]
Не предусмотрена