我一直在编写ftp服务器应用程序,我需要在屏幕上显示一个不确定的进度栏。但是它不会显示。我已经重新粉刷了用户界面,但它不会显示。 代码是:
JProgressBar pb = new JProgressBar();
pb.setIndeterminate(true);
pb.setStringPainted(true);
pb.setString("Transferring files...");
pb.setVisible(true);
pb.setBounds(0, 0, 600, 300);
if (files.length > 0) {
remove(panel);
add(pb);
this.revalidate();
this.repaint();
} else {
JOptionPane.showMessageDialog(this, "Select files to send!", "ERROR!", JOptionPane.ERROR_MESSAGE);
return;
}
try {
for (File f : files) {
//send files code-Heavy code
} catch (SocketException e) {
//A JOptionPane exists here
e.printStackTrace();
} catch (Exception e) {
//A JOptionPane exists here
e.printStackTrace();
}
remove(pb);
add(panel);
statt.setText("Not connected");
server.setEnabled(true);
send.setEnabled(false);
ss.setText("Not Selected");
this.revalidate();
this.repaint();
但是,当发生异常并显示JOptionPane时,将显示进度条,直到对话框关闭,然后返回到正常的UI。您能帮帮我吗?可以解决所有问题:)