Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как в Visual Basic создать цикл.

Голубев Евгений

i> Как в Visual Basic написать цикл?

q> Какой?

i> Чтото вроде таймера, короче этот цикл должен быть бесконечным и чтоб при его выполнении приложение не висло.

q> Это делается с помощью события формы - Form_Activate()

i> А можно подробней.

q> Нужно создать приватную функцию (private function) и private sub. В событии Form_Activate() нужно вписать:

  • Call loops - это обращение к private function loops
  • DoEvents - вот она самая главная
  • Call Looper - а это к private sub

В private sub Looper написать:

Do While Form1.Visible - пока форма видна 
Call loops - обращение к private function loops
DoEvents
Loop

q> Всё готово! Цикл будет происходить в функции loops. Надеюсь понятно?

i> Немного, напиши полностью весь пример.

q> Вот:

Private Sub Form_Activate() DoEvents
Call looper
End Sub

Private Sub looper()
Do While Form1.Visible
Call loops
DoEvents
Loop
End Sub

Private Function loops()

End Function

q> Всё

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 

Комментарии

1.
Аноним
Мне нравитсяМне не нравится
8 июля 2005, 15:23:08
Идея нормална но не хорошая я думаию лучше исползовать WinAPI а имено процедуру Sleep потом
проста вставляите его в безконечни цикл вместе с DoEvents и с указанием длителности паузи в
милисекундах

вот пример:
с начала обявлаете процедуру

Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)

создаете на форм Label и CommandButton
и впроцедуру CommandButton прописиваете

Private Sub Command1_Click()
Do
Call Sleep(1000)
Label1.Caption = Val(Lbl.Caption) + Val(1)
DoEvents
Loop
End Sub

2.
Аноним
+1 / -0
Мне нравитсяМне не нравится
26 августа 2004, 16:15:56
в принципе DoEvents понятен,
когда нужно - пользуюсь - в небольших циклах, иначе использую таймер, хотя это иногда и не очень удобно
причина: в цикле с DoEvents с приложением вроде можно работать, но таскменеджер показывает загрузку проца 100%
не совсем понятен механизм
DoEvents, - пробовал запускать 100 циклов
Do While 1 = 1
DoEvents
Loop
все видны в CallStack, переполнения нет,
может я нерпав, что не использую - но все таки неприятно видеть загруженный процессор
заранее спасибо ответившим
3.
Аноним
Мне нравитсяМне не нравится
26 августа 2004, 15:17:19
в принципе DoEvents понятен,
когда нужно - пользуюсь - в небольших циклах, иначе использую таймер, хотя это иногда и не очень удобно
причина: в цикле с DoEvents с приложением вроде можно работать, но таскменеджер показывает загрузку проца 100%
не совсем понятен механизм
DoEvents, - пробовал запускать 100 циклов
Do While 1 = 1
DoEvents
Loop
все видны в CallStack, переполнения нет,
может я нерпав, что не использую - но все таки неприятно видеть загруженный процессор
заранее спасибо ответившим
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог