我有一个自定义组件GameViewCanvas extends JPanel
,可以容纳许多瓷砖(800x800 纹理)。现在在 GameViewCanvas 中,我已经覆盖了该paint()
方法,以便它将在转换后的画布上绘制孩子(缩放、平移和旋转)。
我现在想将诸如 MouseEvent 和 MouseMotionEvent 之类的事件委托给各自的孩子——问题当然是 Swing 不知道孩子在实际框架上的位置。我想我也许可以像getComponentAt
在父级中那样覆盖一个方法,但没有这样的运气 - 我认为 Swing 是直接循环遍历子级?
也许我对这一切都错了,所以请指教。提前致谢。