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

Вниз

Прерывание выполнения цикла   Найти похожие ветки 

 
angel2000   (2003-10-22 11:06) [0]

Есть процедура, которая работает в цикле
кнопка 1 вызывет данную процедуру и запускает
данный цикл
Так вот в чем вопрос - как сделать так, чтобы при
нажатии кнопки 1 я смог останавливать данный цикл и вообще как
это можно реализовать??????


 
Anatoly Podgoretsky   (2003-10-22 11:11) [1]

Что значит останавливать цикл, что должно при остановке делаться. И какие конретные проблемы испытываешь?


 
TUser   (2003-10-22 11:14) [2]

procedure THread1.Execute
begin
for ... do ...
end

procedure Button1Click
begin
Thread1.Terminate;
end;


 
kavlad   (2003-10-22 11:16) [3]

Видимо, цикл должен выполняться в отдельном потоке, а нажатие на кнопка 1 должно стартовать/останавливать этот поток. Смотри help и примеры по классу TThread. Ничего сложного там нет.


 
KSergey   (2003-10-22 11:22) [4]

В принципе, можно и без потоков - просто в теле цикла, возможно не на каждой итерации, вызывать Application.ProcessMessages, а в обработчике кнопки "Stop" некий флаг устанавливать, который проверять в цикле и, если что, цикл брейковать.
Однако надо быть готовым к тому, что в этом случае пользователь может с дуру начать тыкать вовсе не на кнопку останова, а на меню, системное меню окна, жать Alt-F4 и т.д.



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

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

Наверх




Память: 0.44 MB
Время: 0.008 c
1-8429
axx
2003-10-24 13:58
2003.11.03
MDIChild WindowState


1-8464
NailMan
2003-10-24 11:06
2003.11.03
Проблемы с ресайзингом формы


1-8514
S!R!X
2003-10-23 15:18
2003.11.03
Выполнение команд в другом приложении с послед. выводом результ.


1-8424
Алексей Петухов
2003-10-21 13:40
2003.11.03
DOS Кодировка


7-8694
opoloXAI
2003-08-22 15:37
2003.11.03
Read File from HDD побайтно => скорость очень низкая.





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