Создать Timer программно

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

Создать Timer программно

Сообщение noob4ever » 17.02.2006 (Пт) 22:35

как? и удалить как?

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 17.02.2006 (Пт) 22:41

Код: Выделить всё
' This project requires a Form and a Module
' The Form must have two command buttons (Command1
'  and Command2) on it.
'
'In a form
Private Declare Function CreateTimerQueue Lib "kernel32.dll" () As Long
Private Declare Function CreateTimerQueueTimer Lib "kernel32.dll" (ByRef phNewTimer As Long, ByVal TimerQueue As Long, ByVal Callback As Long, ByVal Parameter As Long, ByVal DueTime As Long, ByVal Period As Long, ByVal Flags As Long) As Long
Private Declare Function DeleteTimerQueue Lib "kernel32.dll" (ByVal TimerQueue As Long) As Long
Private Declare Function DeleteTimerQueueTimer Lib "kernel32.dll" (ByVal TimerQueue As Long, ByVal Timer As Long, ByVal CompletionEvent As Long) As Long
Private hQueue As Long
Private hTimer As Long
Private Sub Form_Load()
    'KPD-Team 2002
    'URL: http://www.allapi.net/
    'E-Mail: KPDTeam@allapi.net
    hQueue = CreateTimerQueue()
    Command1.Caption = "Start"
    Command2.Caption = "Stop"
End Sub
Private Sub Form_Unload(Cancel As Integer)
    DeleteTimerQueue hQueue
End Sub
Private Sub Command1_Click()
    If hTimer = 0 Then
        CreateTimerQueueTimer hTimer, hQueue, AddressOf TimerCallBack, ByVal 0&, 0, 1000, 0
    End If
End Sub
Private Sub Command2_Click()
    If hTimer <> 0 Then
        DeleteTimerQueueTimer hQueue, hTimer, ByVal 0&
        hTimer = 0
    End If
End Sub

'In a module
Public Sub TimerCallBack(ByVal lpParameter As Long, ByVal TimerOrWaitFired As Long)
    Debug.Print "Timer callback..."
End Sub

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

Сообщение tyomitch » 17.02.2006 (Пт) 22:41

Взять класс XTimer из стандартной поставки VB. На этом форуме я его уже выкладывал для тех, у кого поставка нестандартная.
Изображение


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

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

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

    TopList