Выбор цикла Timer or Doevents

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Выбор цикла Timer or Doevents

Сообщение Fedorfx » 21.10.2003 (Вт) 12:12

Всем привет.
Создаю класс для обработки событий.
Думаю сделать в нем очередь.
Подскажите, чем проверять очередь?
Вижу 2 варианта.
1- создать таймер и по нему проверять.
2- Созать цикл Do и в нем поставить DoEvents.
Как на Ваш взглад нужно поступить, что надо учесть???

Ducis
Бывалый
Бывалый
 
Сообщения: 232
Зарегистрирован: 24.04.2002 (Ср) 15:36

Сообщение Ducis » 21.10.2003 (Вт) 13:00

А события какие?
Если системные, то ИМХО, это напрасный труд. Все уже написано на С и называется Windows. Именно система следит за очередью системных событий, а нам остается только указывать что делать при совершении события.
Понимаешь? (с)Б.Ельцин.

Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Сообщение Fedorfx » 21.10.2003 (Вт) 13:37

Да нет. Мои события.
Просто нет надобности исполнять их немедленно.
И еще вот что.
Предположим что событие ждет в очереди другое событие.
Например в очереди есть события 1-2-3-4-5. жду событие 6.
Как только оно пришло - проверяю условие и обрабатываю по обстоятельстам. Вот и думаю - чем реализовать ожидание очереди.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 21.10.2003 (Вт) 15:13

:shock: чего? А если переменных будет 1000? То будет 1000 булинов? И 1000 вложенности if..then?

Это по моему все равно что из спичечных коробков дом строить :)

Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Сообщение Fedorfx » 21.10.2003 (Вт) 15:17

Ребята.
Вопрос в том - по таймеру проверять события или создать бесконечный цикл Do while.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.10.2003 (Вт) 15:41

С Do...Loop будет попроще. Но если не жалко потратить немного труда, то лучше таймером. И работать будет асинхронно и процессор загружать меньше.
Lasciate ogni speranza, voi ch'entrate.

Ducis
Бывалый
Бывалый
 
Сообщения: 232
Зарегистрирован: 24.04.2002 (Ср) 15:36

Сообщение Ducis » 21.10.2003 (Вт) 15:42

Fedorfx писал(а):Ребята.
Вопрос в том - по таймеру проверять события или создать бесконечный цикл Do while.


В С при написании Винды сделали цикл для событий и еще что-то (вечером гляну что) но не таймер - точно.
Понимаешь? (с)Б.Ельцин.

Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Сообщение Fedorfx » 21.10.2003 (Вт) 15:47

Мне тоже таймер больше нравится.
Только вопрос. Как таймер добавить в класс?????

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.10.2003 (Вт) 15:54

Никак :)
API SetTimer(hWnd, nIDEvent, uElapse, lpTimerFunc)
Lasciate ogni speranza, voi ch'entrate.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

    TopList  
cron