【发布时间】:2012-05-13 12:23:09
【问题描述】:
我有一个显示一个椭圆的程序 (Ellipse2D)。
我应该直接将椭圆添加到 JFrame 中,还是应该将它添加到 JPanel 中,最终添加到 JFrame 中? (添加 JPanel 工作量更大)
从长远来看,哪一个对我有帮助? (我可能会考虑放置键绑定。)
为了让事情更清楚:
我应该这样做:
public class Test extends JFrame{ // This is a JFrame
Ellipse ellipse = new Ellipse(); // I have an ellipse class
Test(){
...
add(ellipse);
...
}
}
或者我应该这样做:
public class Test extends JFrame{
Test2 test2 = new Test2();
Test(){
...
add(test2)
...
}
}
public class Test2 extends JPanel{ // This is a JPanel
Ellipse ellipse = new Ellipse(); // I have an ellipse class
Test2(){
...
add(ellipse);
...
}
}
【问题讨论】:
-
我不认为这个问题可以简单回答。最有效的是在这种情况下需要什么。如果您想要一个仅绘制椭圆的 GUI,则将 JPanel 添加到 JFrame。如果您想显示一个绘制椭圆并显示其他内容的 GUI,请添加更多组件。这完全取决于您,即使您以一种方式进行操作并不意味着您以后不会更改它或以后不会以另一种方式使用相同的类。
-
我认为在 JFrame 上调用
getContentPane().add(ellipse)很好,但如果能更多地了解椭圆对象是什么,那就太好了。