Я долгое время рассматривал этот код и не знаю, как заставить мой JProgressBar фактически появиться в графическом интерфейсе. Когда я запускаю приложение, JLabel появляется в JPanel, но JProgressBar не работает, как я могу это исправить?Как я могу открыть свой JProgressBar в моем JPanel?
(примечание: JProgressBar делает работу и обновления, он просто не отображается на графическом интерфейсе)
jPanel9.setLayout(new BorderLayout());
jPanel9.add(new JLabel(theTask.getName() + theTask.getDes()), BorderLayout.NORTH);
JProgressBar progress = new JProgressBar(0, theTask.getMax());
progress.setStringPainted(true);
progress.setBorderPainted(true);
progress.setValue(theTask.getProgress());
progress.setString(theTask.getProgress() + "/" + progress.getMaximum());
progress.setPreferredSize(new Dimension(100,100));
progress.setVisible(true);
jPanel9.add(progress, BorderLayout.SOUTH);
jPanel9.revalidate();
jPanel9.repaint();
System.out.println(progress.getString());
System.out.println("Progress: " + theTask.getProgress());
System.out.println("Max: " + theTask.getMax());
Добавить код, [SSCCE] (http://www.sscce.org/). Возможно, вы неправильно настроили свойства фрейма. – elias
jPanel9.revalidate(); jPanel9.repaint(); попробуйте удалить эти –
Этот код работает в потоке отправки событий AWT, как это предполагалось? – VGR