我是java的新手。我不知道我的画架有什么问题。我将大小设置为300和200。 我所看到的是一种简短而肥胖的东西。
以下是我的代码:
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JFrame;
public class BicycleDemo extends JFrame {
/**
* The serialVersionUID.
*/
private static final long serialVersionUID = -4541236176053545919L;
public static void createGUI () {
JFrame jFrame = new JFrame("JFrame Demo");
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container container = jFrame.getContentPane();
container.setLayout(new FlowLayout());
container.setBackground(Color.BLACK);
jFrame.setSize(300, 200);
jFrame.setResizable(false);
jFrame.pack();
jFrame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createGUI ();
}
});
}
}
请帮忙。
答案 0 :(得分:1)
您正在呼叫pack()
。 pack()
方法将帧的大小调整为可能的最小大小以容纳所有元素。因此,实际上您将大小设置为200 x 300,然后使用pack()
再次调整帧大小。
请注意,“保留所有元素”是根据其首选大小计算的,在很多情况下可能只有0x0像素。