Java自学-图形界面 工具栏

Swing如何使用工具栏JToolBar

工具栏用于存放常用的按钮

步骤 1 : 工具栏

![工具栏]( https://img-blog.csdnimg.cn/20190723140916731.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2plZGR6ZA==,size_16,color_FFFFFF,t_70)

package gui;

import java.awt.BorderLayout;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;

public class TestGUI {
public static void main(String[] args) {

JFrame f = new JFrame("LoL");
f.setSize(400, 300);
f.setLocation(200, 200);
// 菜单
addMenu(f);

// 工具栏
JToolBar tb = new JToolBar();
// 为工具栏增加按钮
JButton b1 = new JButton(new ImageIcon("e:/project/j2se/1.jpg"));
JButton b2 = new JButton(new ImageIcon("e:/project/j2se/2.jpg"));
JButton b3 = new JButton(new ImageIcon("e:/project/j2se/3.jpg"));
JButton b4 = new JButton(new ImageIcon("e:/project/j2se/4.jpg"));
JButton b5 = new JButton(new ImageIcon("e:/project/j2se/5.jpg"));
JButton b6 = new JButton(new ImageIcon("e:/project/j2se/6.jpg"));
tb.add(b1);
tb.add(b2);
tb.add(b3);
tb.add(b4);
tb.add(b5);
tb.add(b6);

// 把工具栏放在north的位置
f.setLayout(new BorderLayout());
f.add(tb, BorderLayout.NORTH);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setVisible(true);
}

private static void addMenu(JFrame f) {
JMenuBar mb = new JMenuBar();

JMenu mHero = new JMenu("英雄");
JMenu mItem = new JMenu("道具");
JMenu mWord = new JMenu("符文");
JMenu mSummon = new JMenu("召唤师");
JMenu mTalent = new JMenu("天赋树");

// 菜单项
mHero.add(new JMenuItem("近战-Warriar"));
mHero.add(new JMenuItem("远程-Range"));
mHero.add(new JMenuItem("物理-physical"));
mHero.add(new JMenuItem("坦克-Tank"));
mHero.add(new JMenuItem("法系-Mage"));
mHero.add(new JMenuItem("辅助-Support"));
mHero.add(new JMenuItem("打野-Jungle"));
mHero.add(new JMenuItem("突进-Charge"));
mHero.add(new JMenuItem("男性-Boy"));
mHero.add(new JMenuItem("女性-Girl"));

mb.add(mHero);
mb.add(mItem);
mb.add(mWord);
mb.add(mSummon);
mb.add(mTalent);

f.setJMenuBar(mb);
}
}

步骤 2 : 给按钮设置提示信息

当鼠标放在按钮上的时候会出现提示

![给按钮设置提示信息]( https://img-blog.csdnimg.cn/20190723140938277.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2plZGR6ZA==,size_16,color_FFFFFF,t_70)

package gui;

import java.awt.BorderLayout;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;

public class TestGUI {
public static void main(String[] args) {

JFrame f = new JFrame("LoL");
f.setSize(400, 300);
f.setLocation(200, 200);
addMenu(f);

JToolBar tb = new JToolBar();
JButton b1 = new JButton(new ImageIcon("e:/project/j2se/1.jpg"));
JButton b2 = new JButton(new ImageIcon("e:/project/j2se/2.jpg"));
JButton b3 = new JButton(new ImageIcon("e:/project/j2se/3.jpg"));
JButton b4 = new JButton(new ImageIcon("e:/project/j2se/4.jpg"));
JButton b5 = new JButton(new ImageIcon("e:/project/j2se/5.jpg"));
JButton b6 = new JButton(new ImageIcon("e:/project/j2se/6.jpg"));
tb.add(b1);
tb.add(b2);
tb.add(b3);
tb.add(b4);
tb.add(b5);
tb.add(b6);

// 给按钮设置提示信息
b1.setToolTipText("坑爹英雄");

// 把工具栏放在north的位置
f.setLayout(new BorderLayout());
f.add(tb, BorderLayout.NORTH);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setVisible(true);
}

private static void addMenu(JFrame f) {
JMenuBar mb = new JMenuBar();

JMenu mHero = new JMenu("英雄");
JMenu mItem = new JMenu("道具");
JMenu mWord = new JMenu("符文");
JMenu mSummon = new JMenu("召唤师");
JMenu mTalent = new JMenu("天赋树");

// 菜单项
mHero.add(new JMenuItem("近战-Warriar"));
mHero.add(new JMenuItem("远程-Range"));
mHero.add(new JMenuItem("物理-physical"));
mHero.add(new JMenuItem("坦克-Tank"));
mHero.add(new JMenuItem("法系-Mage"));
mHero.add(new JMenuItem("辅助-Support"));
mHero.add(new JMenuItem("打野-Jungle"));
mHero.add(new JMenuItem("突进-Charge"));
mHero.add(new JMenuItem("男性-Boy"));
mHero.add(new JMenuItem("女性-Girl"));

mb.add(mHero);
mb.add(mItem);
mb.add(mWord);
mb.add(mSummon);
mb.add(mTalent);

f.setJMenuBar(mb);
}
}

步骤 3 : 禁止工具栏拖动

默认情况下 工具栏可以通过鼠标拖动
setFloatable(false);

可以禁止鼠标拖动功能

![禁止工具栏拖动]( https://img-blog.csdnimg.cn/20190723141017761.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2plZGR6ZA==,size_16,color_FFFFFF,t_70)

package gui;

import java.awt.BorderLayout;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;

public class TestGUI {
public static void main(String[] args) {

JFrame f = new JFrame("LoL");
f.setSize(400, 300);
f.setLocation(200, 200);
addMenu(f);

JToolBar tb = new JToolBar();
JButton b1 = new JButton(new ImageIcon("e:/project/j2se/1.jpg"));
JButton b2 = new JButton(new ImageIcon("e:/project/j2se/2.jpg"));
JButton b3 = new JButton(new ImageIcon("e:/project/j2se/3.jpg"));
JButton b4 = new JButton(new ImageIcon("e:/project/j2se/4.jpg"));
JButton b5 = new JButton(new ImageIcon("e:/project/j2se/5.jpg"));
JButton b6 = new JButton(new ImageIcon("e:/project/j2se/6.jpg"));
tb.add(b1);
tb.add(b2);
tb.add(b3);
tb.add(b4);
tb.add(b5);
tb.add(b6);

b1.setToolTipText("坑爹英雄");

// 禁止工具栏拖动
tb.setFloatable(false);

// 把工具栏放在north的位置
f.setLayout(new BorderLayout());
f.add(tb, BorderLayout.NORTH);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setVisible(true);
}

private static void addMenu(JFrame f) {
JMenuBar mb = new JMenuBar();

JMenu mHero = new JMenu("英雄");
JMenu mItem = new JMenu("道具");
JMenu mWord = new JMenu("符文");
JMenu mSummon = new JMenu("召唤师");
JMenu mTalent = new JMenu("天赋树");

// 菜单项
mHero.add(new JMenuItem("近战-Warriar"));
mHero.add(new JMenuItem("远程-Range"));
mHero.add(new JMenuItem("物理-physical"));
mHero.add(new JMenuItem("坦克-Tank"));
mHero.add(new JMenuItem("法系-Mage"));
mHero.add(new JMenuItem("辅助-Support"));
mHero.add(new JMenuItem("打野-Jungle"));
mHero.add(new JMenuItem("突进-Charge"));
mHero.add(new JMenuItem("男性-Boy"));
mHero.add(new JMenuItem("女性-Girl"));

mb.add(mHero);
mb.add(mItem);
mb.add(mWord);
mb.add(mSummon);
mb.add(mTalent);

f.setJMenuBar(mb);
}
}

更多内容,点击了解: Swing如何使用工具栏JToolBar

posted on 2020-08-19 20:58  半米高峰  阅读(680)  评论(0)    收藏  举报

导航