Интересно (читай: я удивлен :-) вам придется самостоятельно реализовывать любую строку прогресса, зависящую от значения, переопределяя getString
final JProgressBar bar = new JProgressBar() {
@Override
public String getString() {
int max = getMaximum();
return super.getString() + (max - getValue());
}
};
bar.setStringPainted(true);
ActionListener l = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
bar.setValue(bar.getValue() + 1);
}
};
bar.setString("missing: ");
new Timer(500, l).start();