Главная страница
    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-8485
demon88
2003-10-24 00:14
2003.11.03
Файлы!


1-8407
dimon4386
2003-10-24 15:47
2003.11.03
Ассемблер


3-8316
off
2003-10-13 08:23
2003.11.03
Type mismatch?


14-8629
Фте
2003-10-14 19:13
2003.11.03
DxTreeList


1-8523
Igit
2003-10-23 17:04
2003.11.03
LPVOID в Дельфи





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