|案例介绍
在上个案例中,讲到了系统菜单栏的设计与制作。在本案例中,将讲系统的工具栏设计。
|工具栏
工具栏用于放置常用命令按钮,如进货单、销售单、库存盘点等。
向本系统中添加工具栏的方法和添加菜单栏的方法类似,也需要继承Swing的JTool组件编写自己的工具栏。当然,读者也可以根据自己的思路直接使用Swing的JTool组件。本系统为实现代码重用,所以重新定义了工具栏组件。组件的initialize(),方法用于初始化工具栏的程序界面。关键代码如下:。
创建MenuBar类,该类继承java.swing.JMenuBar类,并且在该类中定义一个私有的成员变量,类型为JMenu,用于表示菜单对象。
private void nitialize(){
setSize(new Dimension(600, 24); //初始化工具栏界面的方法
setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));
add(ereateToolButton(menuBar getlnhultemo); //添加指定的工具栏按钮
add(raraeTooluton(menuBar gelXiaoshou dantem);)
add(createToolButon(menuBar. geltKucun pandiantem));
add(createToolButton(menuBar.getJiage_ tiaozhengltem());
add(createToolButton(menuarr.getShangpin_canuntem());
add(createToolButton(menuarr.getShangpin_guangliitem())
add(create ToolButton(menuBar.getKehu_ guanliltem));
add(createToolButton(menuBar.getGys_ guanliltem());
add(createToolButton(menuBar.getExittem();
}
另外还定义了createToolButton0方法 来创建工具栏按钮,该方法实现了高度的代码重用,只要将相应的菜单项作为参数传递给这个方法就可以自动创建新的工具栏按钮。关键代码如下:
private JButton createTolButton(final JMenultem item) {
JButton button = new JButton();//创建按钮
button.setT ext(item.getText();//设置按钮名称
button.setToolTipText(item.getText)); //设置按钮提示文本
button.setlcon(item.getlcon());//设置按钮图标
button.setFocusable(false);
//添加按钮动作监听器
button.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvente){
item.doClick();//执行按钮的单击动作
});
return button;
}
END
主 编 | 王文星
责 编 | 李劲潮
where2go 团队