Archief - [PROG]VB VB tijdsintervallen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

kristofvv

Legacy Member
hallo,

Ik ben nu al een tijdje aant programmeren met VB maar ik zit met hetvolgende probleem:

In Turbo Pascal had je een commando "delay(time in ms)" dat ervoor zorgde dat je pc een ingesteld aantal seconde wachtte voor hij de code verderlas.

Dus mijn vraag: heb je een soort gelijkaardig commando in vb ?

dus:


code
delay(....)
verderlezen code na die aantal seconden wachten

bedankt,

Kristof

Raanº³

Legacy Member
Hoj

ja hoor :)

eerst iets declareren als een datum tijd en dan de aantalmilliseconden toevoegen

iets als
Code:
        'This will pause or timeout your applications code for the specified amount of milli-seconds.
        '
        'Declare a new DateTime variable and fill it with the current
        'time with 2000 milli-seconds added to it.
        Dim timeOut As DateTime = Now.AddMilliseconds(2000)
 
        Do
            '
            'Keep the app from freezing and allow Windows to continue processing the applications messages.
            Application.DoEvents()
 
            'Keep looping until the elasped time of 2000 milliseconds.
        Loop Until Now > timeOut
 
        MsgBox("The code paused for: 2000 Milli-Seconds or 2 Seconds!")

epsilon

Legacy Member
Of,
bovenaan bijvoegen "Imports System.Threading"
en dan
Thread.Sleep(2000) in de code voor een timeout.

R3Deye

Legacy Member
in VB6:
Sleep 2000 ' in milisec

in VB.NET:
System.Threading.Thread.Sleep(2000) ' in milisec

@Raanº³:
DoEvents in een 'lege' Loop zorgt idd niet voor freezing, maar geeft wel 100% Cpu usage. (in VB6 toch, kan niet zeker zeggen voor VB.NET)

coppermine

Legacy Member
R3Deye zei:
in VB6:
Sleep 2000 ' in milisec

in VB.NET:
System.Threading.Thread.Sleep(2000) ' in milisec

@Raanº³:
DoEvents in een 'lege' Loop zorgt idd niet voor freezing, maar geeft wel 100% Cpu usage. (in VB6 toch, kan niet zeker zeggen voor VB.NET)


deze manier is idd the way to go

kristofvv

Legacy Member
epsilon zei:
Of,
bovenaan bijvoegen "Imports System.Threading"
en dan
Thread.Sleep(2000) in de code voor een timeout.

had toch nog graag iets gevraagd:

deze commando's werken niet bij mij, ik gebruik VB6.... Ben wel redelijk noob in die dingen. Heb alleen dos talen geleerd zoals turbo pascal en C.

Kan iemand voor deze commando's duidelijk vertellen wat bovenaan moet en in de code ? Liefst volledig

bedankt,

Kristof

R3Deye

Legacy Member
Wat epsilon toont is alleen voor VB.NET, in VB6 gebruik je:

Code:
Option Explicit

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

Private Sub Command1_Click()

    MsgBox "1"
    Sleep 2000  ' wacht 2 seconden
    MsgBox "2"
    
End Sub
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan