Wenn ich eine JProgressBar verwende ist standardmäßig ein Raster aktiviert. Sie kann z. B. nur die werte 10, 20, 30, 40, ... darstellen, nicht aber 23. Wie kann ich dieses Raster deaktivieren?
DefaultBoundedRangeModel test = new DefaultBoundedRangeModel(0,0,0,100)
{
public int getValue()
{
return (super.getValue() / 10) * 10;
}
};
progressBar = new JProgressBar(test);
progress = new JProgressBar(JProgressBar.HORIZONTAL, 0, 10000)
{
public String getString()
{
return String.format("%.3f%%", (float)progress.getValue() / progress.getMaximum()); // Oder was auch immer....
}
};
public void stateChanged(ChangeEvent e) {
...
if (newPercent != oldPercent) {
setCachedPercent(newPercent);
progressBar.repaint();
}
progress = new JProgressBar(JProgressBar.HORIZONTAL, 0, 10000)
{
@Override
public String getString()
{
return String.format("%.3f%%", (float) getValue() / 100);
}
protected void fireStateChanged()
{
super.fireStateChanged();
repaint();
}
};