public PenApp() {
super("PenApp");
pack();
setVisible(true);
setVisible(false);
pack();
setResizable(false);
pack();
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((d.width - CANVAS_SIZE)/2, (d.height - CANVAS_SIZE)/2);
setSize(CANVAS_SIZE + getInsets().left + getInsets().right,
CANVAS_SIZE + getInsets().top + getInsets().bottom);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
});
img = Toolkit.getDefaultToolkit().getImage
(getClass().getResource("penguin.gif"));
img2 = Toolkit.getDefaultToolkit().getImage
(getClass().getResource("kuwa.gif"));
enableEvents(AWTEvent.MOUSE_EVENT_MASK);
x = getInsets().left;
y = getInsets().top;
setVisible(true);
}
这样的一段代码。我只是想知道为什么在这里使用几个pack()和setVisible()。 谢谢:)为什么打包多次?
我的第一个想法是'因为程序员不知道他们在做什么,只是保持警惕/粘贴代码行直到它神奇地工作'。不要研究那样的代码,也不要将代码放在这样写的API上。 – 2012-08-12 03:15:14