Timer.interval

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

Timer.interval

Сообщение GorYU » 15.04.2007 (Вс) 20:45

Решил определить, насколько Timer отклоняется по времени, написал:
Код: Выделить всё

Option Explicit

Private Declare Function GetTickCount Lib "kernel32" () As Long

Dim T As Long
Dim k As Long
Dim m(500)
Dim i As Integer

Private Sub Timer1_Timer()
k = GetTickCount - T - Timer1.Interval
If i <> 10 Then
    k = k + k
    i = i + 1
Else
    m(Timer1.Interval) = k / i
    i = 0
    k = 0
    Timer1.Interval = Timer1.Interval - 1
    Label1.Caption = Timer1.Interval
    If Timer1.Interval = 0 Then
        For i = 1 To 500
            Text1.Text = Text1.Text & i & vbTab & m(i) & vbCrLf
        Next i
    End If
End If
T = GetTickCount
End Sub

На форме TextBox, Label, Timer.
Кинул в Excel результаты, получил, см. прикреплённые файлы.
интересно это реально
Вложения
1.gif
Картинка
(35.71 Кб) Скачиваний: 35
timer1.xls
Excel
(53.5 Кб) Скачиваний: 34

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 15.04.2007 (Вс) 22:42

На низких значенях Interval таймер для точных измерений времени лучше не использовать
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Re: Timer.interval

Сообщение tyomitch » 16.04.2007 (Пн) 6:54

GorYU писал(а):Решил определить, насколько Timer отклоняется по времени, написал

Здесь ты принимаешь за данность, что GetTickCount выдаёт абсолютно точное время. А это не так.
И вообще под Виндой точное время не получить. Она не для этого.
Изображение


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

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

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

    TopList  
cron