使JFrame标题栏不计算像素

时间:2012-10-10 04:08:47

标签: java swing jframe

我正在用Java开发游戏,以此来教我更多关于Java和游戏编程的知识。但是,我有一个问题。我的JFrame上的标题栏占用了29个Y像素的空间。因此,我的计划空间较少。有没有办法让它成为JFrame Canvas的一角是点(0,0)而不是(0,29)?感谢

1 个答案:

答案 0 :(得分:7)

答案很简单:不要在JFrame的paint(...)方法中绘制,而是在JPanel的paintComponent(...)方法中绘制,然后将JPanel作为JFrame的contentPane。这个解决方案在Swing Tutorials painting section中有详细描述,有几个原因可以做到这一点,包括:

  • 你不会冒险画出不应该被绘制的东西,包括边框和标题栏。
  • 你可以获得Swing默认双缓冲的优势,如果你做任何动画,它可以带来巨大的改进。