|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.09.2012, 12:09 | #1 |
Форумчанин
Регистрация: 25.08.2011
Сообщений: 140
|
Остановка/Возобновление цикла
В Делфи как я понял есть два ключевых слова это Break и Continue.
Бряк останавливает цикл полностью. Continue перешагивает через значение ( пропустить одно значение в цикле) а я хочу остановить цикл и возобновить его по нажатию клавиши. Я думаю что нужно запомнить i в момент остановки цикла и затем продолжить с этого места но как? Весь гугл и этот форум переискал нет ничего о возобновлении циклов. Это вообще реально сделать? Сталкивался с остановкой цикла уже по бряку но я это делал из одной процедуры а мне нужно остановку/возобновление на другой кнопке повешать. Подскажите в каком направлении искать. Вот например есть же abort он останавливает цикл но я незнаю как его использовать из другой кнопки и возобновить потом цикл. Последний раз редактировалось Зод; 12.09.2012 в 12:16. |
12.09.2012, 14:05 | #2 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
||
12.09.2012, 14:56 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
в принципе, я полностью согласен с evg_m.
ну есть разные нюансы, которые зависят от того, что это за цикл, для чего выполняется, для чего ставится на паузу и т.д. и т.п. и ещё, может быть, Вам будет полезно ознакомится с обсуждением аналогичных вопросов на данном форуме. например, http://www.programmersforum.ru/showthread.php?t=13191 http://programmersforum.ru/showthread.php?t=5343 http://www.programmersforum.ru/showthread.php?t=3002 |
12.09.2012, 19:45 | #4 |
Форумчанин
Регистрация: 15.02.2008
Сообщений: 621
|
Как вариант могу предложить цикл повесить в отдельном потоке, НО опять же как уже было сказано товарищами выше надо смотреть на конкретную задачу.
Помог? Ну так нажми на весы!
|
13.09.2012, 06:50 | #5 |
Форумчанин
Регистрация: 25.08.2011
Сообщений: 140
|
То есть мне после бряка или аборта запомнить значение i в глобальную переменную и при возобновлении начать новый цикл с сохраненой i?
________________ Код:
Страно но почему если я ставлю в последнее условие: Код:
Последний раз редактировалось Зод; 13.09.2012 в 08:04. |
13.09.2012, 07:55 | #6 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
На практике это редко делается. ТЫ лучше скажи для чего это нужно.
I'm learning to live...
|
|
13.09.2012, 08:28 | #7 | |
Форумчанин
Регистрация: 25.08.2011
Сообщений: 140
|
Цитата:
Так же на форме чекбоксы как уже писал, они определяют что искать на страницах. Можно конечно тупо удалять строчки из мемо (отработанные) и не парится но мне не нравится этот вариант. Так как мемо должно быть таким какое и при старте. Что бы руками можно было проверить как парсит. |
|
13.09.2012, 09:04 | #8 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
ага. понятно. Тогда я бы всё таки рекомендовал разобраться с потоками, вынести циклы в потоки и, при необходимости, останавливать/продолжать выполнение потоков. Это будет более правильно, удобно, надёжно и красиво.
хотя я сам с потоками не работал, на форуме полно информации и примеров на этот счёт Цитата:
только я бы переменную i2 выкинул напрочь (она Вам не нужна), а код написал таким образом: Код:
Последний раз редактировалось Serge_Bliznykov; 13.09.2012 в 09:07. |
|
13.09.2012, 16:52 | #9 |
Старожил
Регистрация: 06.08.2007
Сообщений: 2,183
|
Как вам этот способ?
Пример: Код:
|
13.09.2012, 21:25 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Предлагаю такой пример:
Код:
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
алгоритмы нахождения эйлерова цикла и гамильтонова цикла в графе. | Necare | Помощь студентам | 0 | 15.11.2011 18:26 |
остановка цикла | dgoc | Помощь студентам | 7 | 28.06.2011 02:18 |
Заморозка и возобновление процесса | logitech12 | Общие вопросы Delphi | 10 | 13.05.2011 22:56 |
Delphi. остановка и возобновление прогр. кода | Flap | Помощь студентам | 0 | 30.04.2011 16:54 |
Переход от цикла к циклу не выходя из цикла (без multithreading) | Qousio | Общие вопросы C/C++ | 2 | 16.05.2009 09:27 |