为什么Java会在最简单的Swing程序上崩溃?
似乎没有任何原因,每当我试图用Swing运行任何东西时,Java都开始崩溃。例如,如果我运行HelloWorld程序只是为了测试东西,它会运行得非常好。但是,如果我尝试使用JFrame运行程序,无论多么简单(我甚至在Java的网站上尝试了JFrame演示示例,只是为了得到一个简单的JFrame程序),我总是会遇到“JavaSE平台二进制已停止工作”错误 这可能与图形驱动程序更新有关吗?我想不会,但你永远不会知道 这是我尝试过的演示:为什么Java会在最简单的Swing程序上崩溃?,java,swing,crash,jframe,Java,Swing,Crash,Jframe,似乎没有任何原因,每当我试图用Swing运行任何东西时,Java都开始崩溃。例如,如果我运行HelloWorld程序只是为了测试东西,它会运行得非常好。但是,如果我尝试使用JFrame运行程序,无论多么简单(我甚至在Java的网站上尝试了JFrame演示示例,只是为了得到一个简单的JFrame程序),我总是会遇到“JavaSE平台二进制已停止工作”错误 这可能与图形驱动程序更新有关吗?我想不会,但你永远不会知道 这是我尝试过的演示: import java.awt.*; import java.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FrameTest {
public static void main(String[] args) {
JFrame frame = new JFrame("FrameDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel emptyLabel = new JLabel("");
emptyLabel.setPreferredSize(new Dimension(175, 100));
frame.getContentPane().add(emptyLabel, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}
但我仍然不能发表评论。这就是为什么即使是简单的事情我也会回答
但我仍然不能发表评论。这就是为什么即使是简单的事情我也会回答
但我仍然不能发表评论。这就是为什么即使是简单的事情我也会回答
但我仍然不能发表评论。这就是为什么即使是简单的事情我也会回答
从
main()
或任何非EDT线程处理Swing时,应始终使用SwingUtilities.invokeLater()
从
main()
或任何非EDT线程处理Swing时,应始终使用SwingUtilities.invokeLater()
从
main()
或任何非EDT线程处理Swing时,应始终使用SwingUtilities.invokeLater()
从
main()
或任何非EDT线程处理Swing时,应始终使用SwingUtilities.invokeLater()
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});