动画时JPanel vs JFrame

时间:2015-01-06 20:53:45

标签: java animation jframe jpanel

我最近做了一个程序,它沿着窗口移动图像并强制它在碰到边框时改变方向。动画发生在JPanel类中,然后当然将其添加到包含main()函数的JFrame类中。现在我的问题是为什么必须以这种方式完成。我不能仅仅使用JFrame并将其用作我的窗口和移动图像的动画类吗? JFrame是否无法在其上表示动画。 问候。

2 个答案:

答案 0 :(得分:1)

使用JPanel会更好,因为您可能希望在一个框架中有多个面板,每个面板都有不同的动画。

是的,您也可以使用JFrame。

答案 1 :(得分:1)

奥马尔的回答是正确的,但我想我可能会详细说明一下: 虽然JFrame的 能够托管您的动画,但它并不是JFrame的典型使用。 JFrame通常是最外层的可视容器,并托管一个或多个其他可视容器(例如JPanel)。虽然有例外,但我认为JPanel是包含动画(或其他GUI控件等)的最灵活和最常用的方式,让您可以灵活地添加视觉功能。

但正如奥马尔指出的那样,可以使用JFrame或JPanel,因为它们都被认为是#34;容器"在Swing。回到我最后的评论,使用JPanel更灵活一点。例如,您可能稍后想要将动画合并到Applet / JApplet中,如果使用JFrame,您可能会感到困惑和/或困难。

我试着评论奥马尔的答案,但我是新用户,但我还没有让我添加评论。因此,赞成赞成:)