Swing菜单与工具栏(六)(二)

2014-11-24 00:44:54 · 作者: · 浏览: 1
BarSeparatorUI
String

ToolBarUI
String

6.3.6 完整的JToolBar使用示例
列表6-8演示了一个完整的JToolBar示例,这个程序生成了一个带有多个菱形按钮的工具栏。这个程序同时重用了本章前面列表6-2中为菜单示例所定义的ShowAction。

在这个示例中允许了rollover属性以演示当前观感的不同。图6-12是我们在不同的按钮上移动鼠标时的输出结果。

package net.ariel.ch06; import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.Action;
import javax.swing.Icon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JToolBar; import net.ariel.ch04.DiamondIcon; public class ToolBarSample { private static final int COLOR_POSITION = 0;
private static final int STRING_POSITION = 1;
static Object buttonColors[][] = {
{Color.RED, "RED"},
{Color.BLUE, "BLUE"},
{Color.GREEN, "GREEN"},
{Color.BLACK, "BLACK"},
null, // separator
{Color.CYAN, "CYAN"}
}; public static class TheActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
System.out.println(event.getActionCommand());
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub Runnable runner = new Runnable() {
public void run() {
JFrame frame = new JFrame("JToolBar Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ActionListener actionListener = new TheActionListener(); JToolBar toolbar = new JToolBar();
toolbar.setRollover(true); for(Object[] color: buttonColors) {
if(color == null) {
toolbar.addSeparator();
}
&nbs