prozessbar in einer Schleife immer wieder Laufen lassen..



  • Hallo,

    wie kann ich eine processbar in einer Schleife immer wider ablaufen lassen?
    Sie läuft auf 100% aber ich schaffe es nicht dass sie das wiederholt.

    hab dies:

    
      private void button3_Click(object sender, EventArgs e)
            {
                 
                for (int n = 0; n < 10; n++)
                {
                    timer3.Interval = 1;
                    this.timer3.Start();
               
                    if(progressBar2.Value == progressBar1.Maximum)
                    {
                        progressBar2.Value = 0;
                        this.timer3.Start();
                    }
                }
     private void timer3_Tick(object sender, EventArgs e)
            {
                progressBar2.Increment(20);
            }
    


  • @Boomaut sagte in prozessbar in einer Schleife immer wieder Laufen lassen..:

    if(progressBar2.Value == progressBar1.Maximum)

    progressBar2 vs. progressBar1 ?



  • hab den Fehler behoben, aber trozdem nicht...

    processbar bleid auf 100%



  • @Boomaut sagte in prozessbar in einer Schleife immer wieder Laufen lassen..:

    processbar bleid auf 100%

    Lass dir mal die aktuellen Zustände ( Value ) in "timer3_tick" anzeigen. Du prüfst ja auf Gleichheit. Vielleicht startest du mit 1 und erhöhst jeweils um 20 ( 21, 41, 61... ). Ich kenne dein Framework nicht und auch den Progressbar nicht. Mach ein paar Debugausgaben.
    Hast du denn das Maximum gesetzt? Das ist ja nicht standardmäßig auf 100, oder?



  • private void button3_Click(object sender, EventArgs e)
    {    
        progressBar2.Value = 0;
        timer3.Interval = 1;  // was sind das? ms? s?
        timer3.Start();
    }
    
    private void timer3_Tick(object sender, EventArgs e)
    {
        if(progressBar2.Value == progressBar2.Maximum) {
            timer3.Stop();
        }
        else {
            progressBar2.Increment(20);
        }
    }
    

Log in to reply