我是Java Swing的新手,我正在研究一个简单的应用程序,该应用程序在窗口中显示棋盘游戏和可移动块。Java Swing - 使用按钮和动态游戏板创建窗口
现在,我有一个好足够的接口:应用是建立在从JFrame
派生的特殊Window
类,以覆盖显示使用drawImage
(通过片迭代来收集位置信息的棋盘和棋子的paint
方法它去)
但是,当我试图添加一些按钮和文本显示区域到整个游戏窗口,但有一个问题。他们没有被显示,直到他们明确点击。通过一些研究,我发现在这样的情况下,覆盖油漆会让事情变得糟糕;显然,你可以混淆paint
或使用按钮等,但不是真的/很容易。
作为一种替代方法,我遇到了一个教程,该教程展示了如何将图像绘制到JPanel上,我想我可以在板/块上使用它,然后像处理其他任何按钮或小部件一样对待(?)在我走下任何死胡同的街道之前(看起来像一个愚蠢的问题,但相信我......),我想问:这是一个好方法吗?或者,还有更好的方法?
应该有很少的理由不断超越像'JFrame',而是作为Reimeus指出,使用像一个'JPanel'顶层容器的'paint'方法并覆盖它的'paintComponent'方法。看看[执行自定义绘画](http://docs.oracle.com/javase/tutorial/uiswing/painting/)和[在AWT和Swing中绘画](http://www.oracle.com/technetwork/ java/painting-140037.html) – MadProgrammer 2013-03-19 23:39:09