Announcement

Collapse
No announcement yet.

Problem mit Division!?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit Division!?

    Hallo,

    ich habe ein Formular auf welchem eine Progressbar ist.
    Mit einer For-schleife realisiere ich den Fortschritt der Progressbar.
    der Fortschritt soll aber auch in einem Label als Prozent angegeben werden und da scheint ein Fehler zu sein, bei der berechnung.
    hier der Code:

    Code:
    		private void btnStart_Click(object sender, System.EventArgs e)
    		{
    			btnZuruecksetzen.Enabled = false;
    			progressBar1.Step = 1;
          int vProzent = 0;
          lblProzent.Text = "";
    			for (int vZaehler = 0; vZaehler <=100; vZaehler++)
    			{	progressBar1.PerformStep();
    				MessageBox.Show("Value: " + progressBar1.Value);
    				//Fortschritt der Progressbar in Prozent ausrechnen
    				vProzent = progressBar1.Value / progressBar1.Maximum * 100;
    				lblProzent.Text = vProzent.ToString();
    				System.Threading.Thread.Sleep(100);
    				Application.DoEvents();
       				
    			}
    			btnZuruecksetzen.Enabled = true;
    		}
    wo ist der Fehler?
    Herzliche Grüße

    Markus Lemcke
    barrierefreies Webdesign

  • #2
    Tut es so herum?

    vProzent = 100 * progressBar1.Value / progressBar1.Maximum;
    Schöne Grüße, Mario

    Comment


    • #3
      andersrum tut es!!!
      aber verrate mir mal warum
      Herzliche Grüße

      Markus Lemcke
      barrierefreies Webdesign

      Comment


      • #4
        Das ist ziemlich einfach. Das Ergebnis und alle Zahlen sind Integer! Sprich Value/Max kann nur 0 oder 1 ergeben, weil ja kein Komma geht. *100 kommt darum an der Stelle zu spät. Darum habe ich den Value vor der Division vergrößert.

        Das ist übrigens meiner Meinung nach ein großer Nachteil für uns Delphianer Value/Max hätte Delphi abgelehnt, da das Ergebnis eine Kommazahl ist.

        Mario
        Schöne Grüße, Mario

        Comment


        • #5
          Hi Mario,

          hast recht. ich habe mich auch gewundert dass der compiler da mit macht!
          in Delphi hätte ich div benutzt! Deine Erklärung klingt einleuchtend, werde es mir merken, danke!

          Gruß


          MARKUS
          Herzliche Grüße

          Markus Lemcke
          barrierefreies Webdesign

          Comment

          Working...
          X