2016-12-14 6 views
-1

Es ist das erste Mal, dass ich das in einem Programm mache und ich frage mich, ob es eine Möglichkeit gibt, das Limit auf Null zu setzen. Der maximale Wert ist 100 und wenn der Benutzer alles verwendet hat, sollte der min Wert 0 sein und sollte nicht kleiner als 0 sein. Dies ist der Code, den ich mir ausgedacht habe. Danke für jede Eingabe, Hilfe und Ideen. Sein über 100 wie folgtWie setzt man den Wert auf Null?

private class SliderListener implements ChangeListener { 
     @Override 
     public void stateChanged(ChangeEvent sl) { 
      int iSlider, dSlider, sSlider, wSlider; 

      iSlider = intSlider.getValue(); 
      dSlider = dexSlider.getValue(); 
      sSlider = strSlider.getValue(); 
      wSlider = wisSlider.getValue(); 

      //Store the points in the display field 
      points.setText(Double.toString(100 - (iSlider + dSlider 
       + sSlider + wSlider))); 
     } 
    } 
+1

Beziehen Sie sich auf den minimalen Wert von Double.toString (100 - (iSlider + dSlider + sSlider + wSlider))? – maheeka

+0

'Math.max (0, andereNum)' – 4castle

+0

Ja. Wenn ich die ersten drei auf 25 verschiebe, sollte es auf der vierten nie über 25 gehen. @maheeka – dullerthandull

Antwort

1

Um es einfach auszudrücken:

int sliderSum = iSlider + dSlider + sSlider + wSlider; 
int master = Math.max (0, 100-sliderSum); 
points.setText (Double.toString (master)); 

Side Hinweis: Wenn Sie Ihre Schieberegler, um mehr als 100 summieren können, werden Sie dann brauchen, darüber nachzudenken, was in diesem Fall geschehen soll ist. Sollten die Schieberegler einen Teil der 100 zugewiesen werden? Sollten sie verboten werden, so hoch zu sein, dass sie über 100 summieren? Oder vielleicht ist das nicht wichtig, in welchem ​​Fall geht es dir gut?

+0

Danke! Das hat sehr geholfen. – dullerthandull

0

So wie ich das tun würde, es ist im Grunde erstellen eine if-Anweisung es, zu verhindern,

if(iSlider + dSlider + sSlider + wSlider > 100) { 
    //do something that changes it 
} 

Oder noch besser, ein Verfahren machen, die ihre Werte, die auch verändert werden Machen Sie Schecks wie die, die ich Ihnen gezeigt habe, damit sie nicht übergehen.

Verwandte Themen