Avatar billede shjdsi Nybegynder
20. november 2003 - 15:27 Der er 3 kommentarer og
2 løsninger

køre function med 5-10 min interval i vusal basic

Hej! hvordan kan jeg kalde en funktion med ca. 5-10 minutters interval, Timer objected supporter kun 1 minut. Jeg har kigget på

Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)


Men hvordan skal det implementeres så en funktion i et modul bliver kaldt hvert 5 minut.
Avatar billede Spotgun Seniormester
20. november 2003 - 15:46 #1
Jeg plejer at lave en integer-variabel der tælles op, hver gang timeren når et minut, og når variablen er på x-antal minutter, så udføres min funktion.

Kan lige se om jeg kan finde noget eksempelkode...
Avatar billede Spotgun Seniormester
20. november 2003 - 15:48 #2
Sæt din timer til et interval på 60000 (1 minut).
Lav en variabel der hedder intCurrent og start med at sætte den til 0
Lav en variabel der hedder intMinutes og sæt den til det antal minutter der skal gå før din function eksekveres...

Private Sub tmrInterval_Timer()
  intCurrent = intCurrent + 1
  If intCurrent = intMinutes Then
    dinFunction
    intCurrent = 0
  End If
End Sub
Avatar billede sjh Nybegynder
20. november 2003 - 16:33 #3
http://www.eksperten.dk/spm/422222

'-------------------------- Form1 --------------------------
Option Explicit

Private lngSek As Long

Private Sub Form_Load()
  lngSek = 86395 '<- 23 timer, 59 min og 55 sek

  With Timer1
      .Interval = 1000 '1000 = 1 sek
      .Enabled = True
  End With
End Sub

Private Sub Timer1_Timer()
  lngSek = lngSek + 1
 
  '60 sek = 1 min
  If (lngSek Mod 60) = 0 Then
    'Køre når der er gået 1 minut
    Me.Caption = "1 menut (" & lngSek & ")"
  End If

  '300 sek = 5 min
  If (lngSek Mod 300) = 0 Then
    'Køre når der er gået 5 minut
    Me.Caption = "5 menut (" & lngSek & ")"
  End If

  '600 sek = 10 min
  If (lngSek Mod 600) = 0 Then
    'Køre når der er gået 10 minut
    Me.Caption = "10 menut (" & lngSek & ")"
    lngSek = 0
  End If

End Sub
'-------------------------- Form1 --------------------------
Avatar billede sjh Nybegynder
20. november 2003 - 16:34 #4
lngSek = 86395 '<- 23 timer, 59 min og 55 sek
=
  lngSek = 0
Avatar billede shjdsi Nybegynder
20. november 2003 - 16:36 #5
Tak for svarene :-O) Det ser rigtigt fint ud...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester