Hét vraag- en antwoordplatform van Nederland

hoe zet ik de "delay functie in visual basic met een textbox?

ik zou graag in mijn code de "delay()" zetten naar het getal ingevoerd in een textbox., zodat gebruikers zelf de delay kunnen kiezen....Ik heb me een bult gezocht op internet maar vind echt nergens een goede tutorial.
Kan iemand me aub helpen???

Alvast hartstikke bedankt!!
~Quinten

Verwijderde gebruiker
10 jaar geleden
Geef jouw antwoord
0 / 2500
Geef Antwoord

Antwoorden (2)

System.Threading.Thread.Sleep(5000)

of

Sub Pause(ByVal milliseconds As Long)
If milliseconds <= 0 Then Return
Dim sw As New Stopwatch()
sw.Start()
Dim i As Long = 0
Do
If i Mod 50000 = 0 Then ' Check the timer every 50,000th iteration
sw.Stop()
If sw.ElapsedMilliseconds >= milliseconds Then
Exit Do
Else
sw.Start()
End If
End If
i += 1
Loop
End Sub

Pause(5000)
Verwijderde gebruiker
10 jaar geleden
Je kunt de tekst uit de tekstbox lezen en omzetten naar een integer. Als hier een bruikbaar getal uit komt, roep je de Sleep() functie er mee aan:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim delay As Integer
If (Integer.TryParse(TextBox1.Text, delay) And (delay > 0)) Then
Threading.Thread.Sleep(delay)
MessageBox.Show("De delay was " + delay.ToString())
End If
End Sub

Maar let op, hiermee blokkeer je de gebruikersinterface, en daar zitten gebruikers meestal niet op te wachten. De vraag is dus wat je hier mee wilt bereiken. Iets meer werk, maar wel netter, is om een timer te gebruiken die een callback geeft zodra de ingestelde tijd is verstreken.
Verwijderde gebruiker
10 jaar geleden
Deel jouw antwoord
0 / 2500
Geef Antwoord
logo van Kompas Publishing

GoeieVraag.nl is onderdeel van Kompas Publishing