当前位置: 首页 > 教程 > Java Swing >

Java JToolBar

精华
小牛编辑
133浏览
2023-03-14

1 Java JToolBar的介绍

JToolBar容器允许我们对其他组件进行分组,通常是在行或列中带有图标的按钮。JToolBar提供了一个组件,可用于显示常用的动作或控件。

2 Java JToolBar的内部类

内部类 描述
protected class JToolBar.AccessibleJToolBar 此类实现JToolBar类的可访问性支持。
static class JToolBar.Separator 工具栏特定的分隔符。

3 Java JToolBar的构造方法

构造方法 描述
JToolBar() 创建一个新的工具栏;方向默认为水平。
JToolBar(int orientation) 将创建具有指定方向的新工具栏。
JToolBar(String name) 使用指定的名称创建一个新的工具栏。
JToolBar(String name, int orientation) 它会创建一个具有指定名称和方向的新工具栏。

4 Java JToolBar的方法

方法 描述
JButton add(Action a) 添加了一个新的JButton来调度操作。
protected void addImpl(Component comp, Object constraints, int index) 如果要添加JButton,则最初将其设置为禁用。
void addSeparator() 将默认大小的分隔符附加到工具栏的末尾。
protected PropertyChangeListener createActionChangeListener(JButton b) 返回正确配置的PropertyChangeListener,该属性将在对Action进行更改时更新控件;如果需要控件的默认属性更改侦听器,则返回null。
protected JButton createActionComponent(Action a) 为添加到JToolBar的Actions创建JButton的工厂方法。
ToolBarUI getUI() 返回工具栏的当前UI。
void setUI(ToolBarUI ui) 设置呈现此组件的L&F对象。
void setOrientation(int o) 设置工具栏的方向。

5 Java JToolBar的案例

package cn.xnip;

/**
 * 小牛知识库网: https://www.xnip.cn
 */

import java.awt.BorderLayout;
import java.awt.Container;  
import javax.swing.JButton;  
import javax.swing.JComboBox;  
import javax.swing.JFrame;  
import javax.swing.JScrollPane;  
import javax.swing.JTextArea;  
import javax.swing.JToolBar;  
  
public class JToolBarExample {  
    public static void main(final String args[]) {  
        JFrame myframe = new JFrame("JToolBar案例-小牛知识库网");
        myframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        JToolBar toolbar = new JToolBar();  
        toolbar.setRollover(true);  
        JButton button = new JButton("File");  
        toolbar.add(button);  
        toolbar.addSeparator();  
        toolbar.add(new JButton("Edit"));  
        toolbar.add(new JComboBox(new String[] { "Opt-1", "Opt-2", "Opt-3", "Opt-4" }));  
        Container contentPane = myframe.getContentPane();  
        contentPane.add(toolbar, BorderLayout.NORTH);  
        JTextArea textArea = new JTextArea();  
        JScrollPane mypane = new JScrollPane(textArea);  
        contentPane.add(mypane, BorderLayout.EAST);  
        myframe.setSize(450, 250);  
        myframe.setVisible(true);  
    }  
}

输出结果为: