Fortschrittsbalken

  • Hallo
    Kann mir jemand von euch bitte erklären wie ich einen Fortschrittsbalken für "Fabi´s Optimierungsprogramm" (Ich will nen Freund reinlegen der mich oft nervt)mache?
    Der Fortschrittsbalken sollte folgendes machen:


    1. Wenn er die Optimierer.bat erstellt hat.(Wäre schon wenn mir gleich einer verraten würde wie man ne Batch-Datei aus dem Script heraus erstellt (steht aber bestimmt irgendwo))

    2. Einen Schritt weiterspringen wenn er die Datei Optimierer.bat ins Autostartverzeichnis kopiert hat.


    Könntet ihr mir bitte auch genau erklären wie des geht?Also nicht nur Code.
    Danke im voraus.

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)

    Einmal editiert, zuletzt von Fast2 (30. Oktober 2007 um 23:40)

    • Offizieller Beitrag

    Hi erst mal!

    Ich denke, wenn man jemanden reinlegen will, dann eigentlich schon mit dem eigenen Können und nicht dem von anderen, oder? :)

    FileWrite schreibt dir eine Bat Datei, FileCreateShortcut legt Verknüpfungen an. Damit solltest du eine eigene Lösung basteln können.
    ProgressOn und ProgressSet sowie ProgressOff für die Progressbar.

    peethebee

  • ich weiss. :rolleyes: Mein Hauptproblem is ja nicht Progressbar auf dem Bildschirm zu machen, sonder dass die weitergeht.

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)

  • Danke!Genau das hab ich gebraucht. :klatschen:

    Edit:
    ?(
    Irgendwie geht des Trotzdem nicht:
    Das hab ich geschrieben(Kommt noch was davor aber ist nicht relevant):


    Spoiler anzeigen
    [autoit]

    $Form1 = GUICreate("Virenscanner", 640, 450, 200, 125, BitOR($WS_MAXIMIZEBOX,$WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_TABSTOP,$WS_BORDER,$WS_CLIPSIBLINGS))
    $Fortschritt = GUICtrlCreateProgress(20, 100, 300, 40)
    GUISetState(@SW_SHOW)
    $Druecken = GUICtrlCreateButton("Drücken", 250, 150 )

    [/autoit] [autoit][/autoit] [autoit]

    sleep(200)
    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $Druecken
    ProgressSet(20)
    Case Else
    ProgressSet(10)
    EndSelect
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Wend
    sleep(1000)

    [/autoit]

    bernd670 [01.11.07 11:58]: mehrere Posts zusammengefasst!

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)

  • hi

    um in deiner eigenen gui eine progressbar anzusprechen brauchst du guictrlsetdata...

    also guictrlsetdata($Fortschritt,wert)

    mfg :)


    edit: lol^^ und wie immer der langsamste :(

    Einmal editiert, zuletzt von derda (31. Oktober 2007 um 14:33)

  • Danke für eure Mühe ich schau mal ob das Funktioniert. Aber hört sich durchaus logisch an dass man guictrlset dingsbums braucht(Warum steht das eigentlich nicht in der Hilfe)?

    Also wie ich es genau hättte (als Test; später bau ich das richtige Programm zusammen):
    -Doppelklick auf Programmsymbol
    -Programm startet
    -Wenn auf Drücken geklickt wird geht Fortschritt auf 20%
    -Wenn nicht auf 10%
    Mein jeziges Script:

    Spoiler anzeigen
    [autoit]

    $Form1 = GUICreate("Optimierer", 640, 450, 200, 125, BitOR($WS_MAXIMIZEBOX,$WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_TABSTOP,$WS_BORDER,$WS_CLIPSIBLINGS))
    $Fortschritt = GUICtrlCreateProgress(20, 100, 300, 40)
    GUISetState(@SW_SHOW)
    $Druecken = GUICtrlCreateButton("Drücken", 250, 150 )

    [/autoit] [autoit][/autoit] [autoit]

    sleep(200)
    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $Druecken
    GUICtrlSetData($Fortschritt,20)
    sleep(100)
    Case Else
    ProgressSet(10)
    EndSelect
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Wend
    sleep(1000)

    [/autoit]

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)

    2 Mal editiert, zuletzt von Fast2 (31. Oktober 2007 um 16:09)

    • Offizieller Beitrag
    Zitat

    Original von Fast2
    Danke für eure Mühe ich schau mal ob das Funktioniert. Aber hört sich durchaus logisch an dass man guictrlset dingsbums braucht(Warum steht das eigentlich nicht in der Hilfe)?

    Ich weiß ja nicht, in welche Hilfe du schaust. Aber wenn du das Bsp. ansiehst steht dort genau das drin.

  • Neue Idee!

    Das Drücken und auf 20% stellen geht, aber das automatisch auf 10% stellen nicht.
    Irgendwie stell ich mich entweder dumm an oder des Programm mag mich nicht.


    Edit peethebee: Ein Post tut es auch :).

    Edit:
    Ich weis auch nicht.
    Mach ich vielleicht was bei der Überprüfungsroutine falsch?
    Eigentlich sollte ja eine GUI mit Fortschrittsbalken erzeugt werden
    die alle 2ms überprüft ob der Button noch gedrückt ist und ggf. den Fortschrittsbalken von 20%(gedrückt) auf 10%(nichts gedrückt)
    zurücksetzt.

    Spoiler anzeigen
    [autoit]

    $Form1 = GUICreate("Optimierer", 640, 450, 200, 125, BitOR($WS_MAXIMIZEBOX,$WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_TABSTOP,$WS_BORDER,$WS_CLIPSIBLINGS))
    $Fortschritt = GUICtrlCreateProgress(20, 100, 300, 40)
    GUISetState(@SW_SHOW)
    $Druecken = GUICtrlCreateButton("Drücken", 250, 150 )

    [/autoit] [autoit][/autoit] [autoit]

    sleep(200)
    While 1
    $msg = GUIGetMsg()
    sleep(2)
    IF $msg = $Druecken Then
    GUICtrlSetData($Fortschritt,20)
    sleep(100)
    EndIf
    IF Not $msg = $Druecken Then
    ProgressSet(10)
    EndIF
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Wend

    [/autoit]

    Edit:
    Ich habs beim stöbern im Forum bin ich auf den Link
    Seite
    gestoßen und da steht was ich brauche:
    Ich hab das

    [autoit]

    Return to 1

    [/autoit]

    vergessen

    Edit:Mist geht nur bei Funktionen

    Edit:
    Danke für eure Hilfe!
    Das Problem ist gelöst!
    Ich hab mich nur mal vertippt gehabt.
    Mein fertiger Code lautet:

    Spoiler anzeigen
    [autoit]

    $Form1 = GUICreate("Optimierer", 640, 450, 200, 125, BitOR($WS_MAXIMIZEBOX,$WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_TABSTOP,$WS_BORDER,$WS_CLIPSIBLINGS))
    $Fortschritt = GUICtrlCreateProgress(20, 100, 300, 40)
    GUISetState(@SW_SHOW)
    $Druecken = GUICtrlCreateButton("Drücken", 250, 150 )

    [/autoit] [autoit][/autoit] [autoit]

    sleep(200)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    sleep(1000)
    Select
    Case $msg = $Druecken
    GUICtrlSetData($Fortschritt,20)
    Case Else
    GUICtrlSetData($Fortschritt,10)
    EndSelect
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Wend

    [/autoit]


    So und jetzt weiter am Programm arbeiten

    bernd670 [01.11.07 11:55]: mehrere Posts zusammengefasst!

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)