这和UI的动作和工程设计是密不可分的,关键是你获得GraphicsPanel 实例的途径,敝人也做过类似的,如果你的Action放在GraphicsPanel 那里当然好办,可以直接通过getSource就ok了,但是你用的是Button.我一般用2个方法处理这种情况,呵呵~~如果大家有更好的设计方法,请提出,我也想改进. 一,用static的公共方法硬性获得你要repaint的实例,这种一般把最大容器设计成一个管理类,然后其中包含的子容器根据其公共静态方法获得要处理的实例. 二,用接口,这种方法虽然麻烦,但是比较符合OO思想,大家用共同的方法是update表现和数据,只需要一个方法接口,然后注册的接口方法也一个就可以,我现在就是这样做的. 不论那种方法,一言蔽之,哪个简单就用哪个. And issue,let me know.
是可以触发事件,但是我只实现了MyOperation中的数组清零,却不知道如何触发repaint();
屏幕显示没有随按钮触发自动改变。
可以编译通过,却不产生效果。
如:
GraphicsPanel gp;gp.repaint();?
一,用static的公共方法硬性获得你要repaint的实例,这种一般把最大容器设计成一个管理类,然后其中包含的子容器根据其公共静态方法获得要处理的实例.
二,用接口,这种方法虽然麻烦,但是比较符合OO思想,大家用共同的方法是update表现和数据,只需要一个方法接口,然后注册的接口方法也一个就可以,我现在就是这样做的.
不论那种方法,一言蔽之,哪个简单就用哪个.
And issue,let me know.
能说的更具体一些吗?谢谢。
至于第二种方法,你能解释的更详细一些吗?谢谢