本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频
4分25秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器 步骤 1 : 工具栏 步骤 2 : 给按钮设置提示信息 步骤 3 : 禁止工具栏拖动 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);
}
}
当鼠标放在按钮上的时候会出现提示
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);
}
}
默认情况下 工具栏可以通过鼠标拖动
setFloatable(false); 可以禁止鼠标拖动功能 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);
}
}
HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。
问答区域
2020-03-23
使用循环来添加组件
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
2019-11-08
提示信息不显示,还有我的本来就没办法拖动
2 个答案
小机double 跳转到问题位置 答案时间:2020-01-18 要等一会才会显示的
ddddq 跳转到问题位置 答案时间:2020-01-13 提示信息好像是延迟的问题,你鼠标放上去不动等一会就会弹出了,我也遇到这个问题了,我刚放上去发现没有提示消息就把鼠标移开,,,然后就以为不显示
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
2017-06-19
步骤一中工具栏的图标没有显示出来图片
2017-04-05
按钮没有提示信息
提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
|