Problem mit wait-befehl

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Rinecamo.

    Problem mit wait-befehl

    Hallo liebes VB-Paradise.de-team,
    und zwar hab ich ein Problem. :D
    Denn ich bin Anfänger!
    Ich möchte ein neues Projekt gestalten und darin gibt es eine ProgressBar, einen Timer und einen Button.
    So. Hier mal der Quelltext:
    Public Class Form1

    Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Timer1.Start()
    System.Threading.Thread.Sleep(12000)
    Process.Start("shutdown.exe", "-s -f -t 0")
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    ProgressBar1.Increment(1)
    End Sub
    End Class

    Ok.
    :P
    Das Programm, wenn ich es ausführe, funktioniert prima, doch wenn ich dann auf den Button klicke, wartet er erstmal 12 sek. wie es angeben ist (12000) und fährt dann runter.Ich möchte aber dass die ProgressBar läuft und dann 12 sek. gewartet wird und dann shutdown ausgeführt wird.Bei meinem Problem wird erst 12 sek. gewartet und dann erst die Bar
    aktiviert.
    ?(
    Kann mir einer sagen was ich falsch mache bzw. was ich ändern muss?
    Danke schonmal für die Antworten.
    ;)
    Gruß
    Kingnoah123...
    Ok, bitte den Code in sowas:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click
    3. End Sub
    4. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    5. Timer1.Start()
    6. System.Threading.Thread.Sleep(12000)
    7. Process.Start("shutdown.exe", "-s -f -t 0")
    8. End Sub
    9. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    10. ProgressBar1.Increment(1)
    11. End Sub
    12. End Class
    und das heißt?
    soll ich den wait-befehl im timer einfügen?

    Rinecamo schrieb:


    Ok, bitte den Code in sowas:








    Visual Basic Quellcode




    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16



    Public Class Form1

    Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Timer1.Start()
    System.Threading.Thread.Sleep(12000)
    Process.Start("shutdown.exe", "-s -f -t 0")
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    ProgressBar1.Increment(1)
    End Sub
    End Class





    nop geht leider nich is immer noch des selbe :(
    xD schwerer Fall von C&P Fail.
    Ich hab deinen Code in eine VB-Code Box getan, da es sonst ziemlich unübersichtlich ist.
    Benutz nen Integer und den Timer.
    Bei jedem Timer Tick den Integer + 1 und wenn er auf 12 ist, Shutdown.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Rinecamo“ ()

    Rinecamo schrieb:

    Ok, bitte den Code in sowas:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click
    3. End Sub
    4. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    5. Timer1.Start()
    6. System.Threading.Thread.Sleep(12000)
    7. Process.Start("shutdown.exe", "-s -f -t 0")
    8. End Sub
    9. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    10. ProgressBar1.Increment(1)
    11. End Sub
    12. End Class

    Warfley schrieb:

    mit dem sleep frirst du deine form ein, mach alles über timer

    Rinecamo schrieb:

    xD schwerer Fall von C&P Fail.
    Ich hab deinen Code in eine VB-Code Boix getan, da es sonst ziemlich unübersichtlich ist.
    Benutz nen Integer und den Timer.
    Bei jedem Timer Tick den Integer + 1 und wenn er auf 12 ist, Shutdown.

    ähhmmm und wie genau mach ich des :D ich kann noch nich wirklich vieles xD
    Bitte, tu mir einen Gefallen, mach keine Vollzitate.

    VB.NET-Quellcode

    1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    2. Timer1.Start()
    3. Timer2.Start()
    4. End Sub
    5. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    6. ProgressBar1.Increment(1)
    7. End Sub
    8. Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
    9. Process.Start("shutdown.exe", "-s -f -t 0") 'Timer2 INtervall aur 12000
    10. End Sub


    Einfach simple Lösung, gibt zwar noch andere Möglichkeiten, aber ich denke die ist die einfachste.