我正在编写这个程序来在 JWindow 中显示 JProgressbar。但是在同一台机器上运行这个程序而不做任何更改,每次都会显示不同的结果。大多数时候它显示空的 JWindow,里面没有任何东西。其他时候,它显示了我期望它出现的方式。我不知道出了什么问题。
我尝试过使用 JFrame。然后它一直完美地工作。但我想使用 JWindow。
这是我的代码:
package des;
import javax.swing.*;
import java.awt.*;
public class Test extends JWindow {
JPanel panel = new JPanel();
JLabel messageLabel = new JLabel();
JProgressBar progressBar = new JProgressBar(0, 100);
Test() {
setVisible(true);
setSize(480, 100);
setLocationRelativeTo(null);//put it in center of screen
messageLabel.setText("Hello World");
messageLabel.setAlignmentX(JLabel.CENTER);
progressBar.setValue(0);
panel.setLayout(new BorderLayout());
panel.add(messageLabel, BorderLayout.CENTER);
panel.add(progressBar, BorderLayout.SOUTH);
panel.setBackground(Color.cyan);
add(panel,BorderLayout.CENTER);
}
public static void main(String[] args) {
new Test();
}
}
我在 intelliJ 的 Windows 10 64bit 中运行。这是我的 java -version:
openjdk version "12.0.1" 2019-04-16
OpenJDK Runtime Environment (build 12.0.1+12)
OpenJDK 64-Bit Server VM (build 12.0.1+12, mixed mode, sharing)