这次的画图板较上次有很大的改进。在这一个版本中我们用到了菜单条(JMenuBar)、面板(JPanel),以及监听器设置中的一个getActionCommand()(对应的应该有一个setActionCommand()).
我们分别创建显示画图板的放发public void showUI(){}, 设置菜单条的方法 public JMenuBar creatbar(){}、设置各个面板的方法 public void setToolPanel(){}、public void setColorlPanel(){}. 在设置方法的时候应该注意是否有返回值,如果有返回值需要注意其返回值得类型,例如上面设置菜单条的方法,我们在showUI()中调用的时候,返回的是一个JMenuBar.
为了简化代码,我们不再对每一个按钮添加一个监听器,而是一个监听器去监听多个动作。其中需要一个标志(command)来区分不同的按钮动作,但是command方法对于的返回值是String类型,不使用与所有情况。此时我们用getSourse()方法来返回一个object对象,Object是java类中的根类(所以类都直接或间接的继承它),这里只要将返回的object对象强制转换成我们所需要的类型,即可区分不同的动作。