Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / прервать выполнение программы через кнопку / 7 сообщений из 7, страница 1 из 1
25.03.2008, 12:40
    #35211753
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
программа бежит в процедуре в цикле
мне нужно при нажатии на кнопку прервать выполнение цикла и процедуры
при этом ту часть работы которая уже выполнена нужно сохранить
или чтобы выполнился определённый блок а после была остановка
(например с сообщением)
как такое реализовать
Спасибо
...
Рейтинг: 0 / 0
25.03.2008, 13:51
    #35212020
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
на кнопку - флаг
внутри процедуры DoEvents ии проверка на флаг завершения.
...
Рейтинг: 0 / 0
25.03.2008, 13:53
    #35212025
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
Можно так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Option Explicit
Private i As Long
Const MAX_VALUE As Long =  200000000 
Private Sub cmdStart_Click()
    i =  1 
    For i =  1  To MAX_VALUE
    DoEvents
    Label1.Caption = CStr(i)
    Next i
End Sub

Private Sub cmtStop_Click()
    MsgBox "Program stopped at " & CStr(i)
    i = MAX_VALUE +  1 
End Sub
...
Рейтинг: 0 / 0
25.03.2008, 15:37
    #35212462
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
в принципе я так и сделал
только долго выходит думал можно быстрее
в любом случае спасибо
...
Рейтинг: 0 / 0
25.03.2008, 15:43
    #35212492
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
Там наверно, через threads надо.
...
Рейтинг: 0 / 0
25.03.2008, 15:47
    #35212512
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
И еще идея. Исполнение DoEvents в каждой итерации - это перестраховка. Человек много медленнее, а DoEvents потребляет ресурсы. Попробуйте так:

If i Mod 2000 = 0 Then DoEvents
...
Рейтинг: 0 / 0
25.03.2008, 16:28
    #35212683
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прервать выполнение программы через кнопку
> Автор: big-duke
> Можно так

а потом появляются вопросы, почему цикл работает не правильно, и после
двухдневного расследования выясняется, что где-то модифицируется управляющая
переменная цикла ;-)

Уж лучше флаг ввести и проверять его :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / прервать выполнение программы через кнопку / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]