📄 menubar.java
字号:
package com.lzw;
import java.awt.*;
import java.awt.event.*;
import java.beans.PropertyVetoException;
import java.lang.reflect.Constructor;
import java.net.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import com.lzw.iframe.*;
public class MenuBar extends JMenuBar {
/**
* (进货管理)菜单
*/
private JMenu jinhuo_Menu = null;
/**
* (进货单)菜单项,位于(进货管理)菜单内
*/
private JMenuItem jinhuoItem = null;
/**
* (进货退货)菜单项,位于(进货管理)菜单内
*/
private JMenuItem jinhuo_tuihuoItem = null;
/**
* (销售管理)菜单
*/
private JMenu xiaoshou_Menu = null;
/**
* (库存管理)菜单
*/
private JMenu kucun_Menu = null;
/**
* (信息查询)菜单
*/
private JMenu xinxi_chaxunMenu = null;
/**
* (基本资料)菜单
*/
private JMenu jiben_ziliaoMenu = null;
/**
* (系统维护)菜单
*/
private JMenu xitong_weihuMenu = null;
/**
* (窗口)菜单
*/
private JMenu chuang_kouMenu = null;
/**
* (帮助)菜单
*/
private JMenu bang_zhuMenu = null;
/**
* (关于)菜单项,位于(帮助)菜单内
*/
private JMenuItem guanyu_Item = null;
/**
* (联系技术支持)菜单项,位于(帮助)菜单内
*/
private JMenuItem bugItem = null;
/**
* (访问技术网站)菜单项,位于(帮助)菜单内
*/
private JMenuItem fangwen_wangzhanItem = null;
/**
* (销售单)菜单项,位于(销售管理)菜单内
*/
private JMenuItem xiaoshou_danItem = null;
/**
* (销售退货)菜单项,位于(销售管理)菜单内
*/
private JMenuItem xiaoshou_tuihuoItem = null;
/**
* (库存盘点)菜单项,位于(库存管理)菜单内
*/
private JMenuItem kucun_pandianItem = null;
/**
* (价格调整)菜单项,位于(库存管理)菜单内
*/
private JMenuItem jiage_tiaozhengItem = null;
/**
* (销售查询)菜单项,位于(信息查询)菜单内
*/
private JMenuItem xiaoshou_chaxunItem = null;
/**
* (商品查询)菜单项,位于(信息查询)菜单内
*/
private JMenuItem shangpin_chaxunItem = null;
/**
* (销售排行)菜单项,位于(信息查询)菜单内
*/
private JMenuItem xiaoshou_paihangItem = null;
/**
* (商品管理)菜单项,位于(基本资料)菜单内
*/
private JMenuItem shangpin_guanliItem = null;
/**
* (客户管理)菜单项,位于(基本资料)菜单内
*/
private JMenuItem kehu_guanliItem = null;
/**
* (供应商管理)菜单项,位于(基本资料)菜单内
*/
private JMenuItem gys_guanliItem = null;
/**
* (经手人设置)菜单项,位于(基本资料)菜单内
*/
private JMenuItem jsr_guanliItem = null;
/**
* (密码修改)菜单项,位于(系统维护)菜单内
*/
private JMenuItem mima_xiugaiItem = null;
/**
* (数据库备份与恢复)菜单项,位于(系统维护)菜单内
*/
private JMenuItem shuju_beifenItem = null;
/**
* (退出)菜单项,位于(系统维护)菜单内
*/
private JMenuItem exitItem = null;
/**
* (窗口平铺)菜单项,位于(窗口)菜单内
*/
private JMenuItem pingpuItem = null;
/**
* 容纳内部窗体的桌面面板
*/
private JDesktopPane desktopPanel = null;
/**
* 内部窗体的集合
*/
private Map<JMenuItem, JInternalFrame> iFrames = null;
/**
* 内部窗体的位置坐标
*/
private int nextFrameX, nextFrameY;
/**
* (全部关闭)菜单项,位于(窗口)菜单内
*/
private JMenuItem closeAllItem = null;
/**
* (全部最小化)菜单项,位于(窗口)菜单内
*/
private JMenuItem allIconItem = null;
/**
* (全部还原)菜单项,位于(窗口)菜单内
*/
private JMenuItem allResumeItem = null;
/**
* 状态栏的内部窗体提示标签
*/
private JLabel stateLabel = null;
/**
* 默认的构造方法
*
*/
private MenuBar() {
}
public MenuBar(JDesktopPane desktopPanel, JLabel label) {
super();
iFrames = new HashMap<JMenuItem, JInternalFrame>();
this.desktopPanel = desktopPanel;
this.stateLabel = label;
initialize();
}
/**
* 初始化菜单栏界面的方法
*
*/
private void initialize() {
this.setSize(new Dimension(600, 24));
add(getJinhuo_Menu());
add(getXiaoshou_Menu());
add(getKucun_Menu());
add(getXinxi_chaxunMenu());
add(getJiben_ziliaoMenu());
add(getXitong_weihuMenu());
add(getChuang_kouMenu());
add(getBang_zhuMenu());
}
/**
* 初始化进货管理菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getJinhuo_Menu() {
if (jinhuo_Menu == null) {
jinhuo_Menu = new JMenu();
jinhuo_Menu.setText("进货管理(J)");
jinhuo_Menu.setMnemonic(KeyEvent.VK_J);
jinhuo_Menu.add(getJinhuoItem());
jinhuo_Menu.add(getJinhuo_tuihuoItem());
}
return jinhuo_Menu;
}
/**
* 初始化(进货单)菜单项的方法 该方法定义菜单项打开进货单窗口,并使窗口处于被选择状态
*
* @return javax.swing.JMenuItem
*/
public JMenuItem getJinhuoItem() {
if (jinhuoItem == null) {
jinhuoItem = new JMenuItem();
jinhuoItem.setText("进货单");
jinhuoItem.setIcon(new ImageIcon(getClass().getResource(
"/res/icon/jinhuodan.png")));
jinhuoItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
createIFrame(jinhuoItem, JinHuoDan_IFrame.class);
}
});
}
return jinhuoItem;
}
/**
* 初始化(进货退货)菜单项的方法,该方法定义菜单项打开(进货退货)窗体,并使窗体处于已选择状态。
*
* @return javax.swing.JMenuItem
*/
public JMenuItem getJinhuo_tuihuoItem() {
if (jinhuo_tuihuoItem == null) {
jinhuo_tuihuoItem = new JMenuItem();
jinhuo_tuihuoItem.setText("进货退货");
jinhuo_tuihuoItem.setIcon(new ImageIcon(getClass().getResource(
"/res/icon/jinhuo_tuihuo.png")));
jinhuo_tuihuoItem
.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
createIFrame(jinhuo_tuihuoItem, JinHuoTuiHuo.class);
}
});
}
return jinhuo_tuihuoItem;
}
/**
* 初始化(销售管理)菜单的方法,该方法定义菜单项打开内部窗体,并使窗体处于已选择状态。
*
* @return javax.swing.JMenu
*/
public JMenu getXiaoshou_Menu() {
if (xiaoshou_Menu == null) {
xiaoshou_Menu = new JMenu();
xiaoshou_Menu.setText("销售管理(X)");
xiaoshou_Menu.setMnemonic(KeyEvent.VK_X);
xiaoshou_Menu.add(getXiaoshou_danItem());
xiaoshou_Menu.add(getXiaoshou_tuihuoItem());
}
return xiaoshou_Menu;
}
/**
* 初始化(库存管理)菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getKucun_Menu() {
if (kucun_Menu == null) {
kucun_Menu = new JMenu();
kucun_Menu.setText("库存管理(K)");
kucun_Menu.setMnemonic(KeyEvent.VK_K);
kucun_Menu.add(getKucun_pandianItem());
kucun_Menu.add(getJiage_tiaozhengItem());
}
return kucun_Menu;
}
/**
* 初始化(信息查询)菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getXinxi_chaxunMenu() {
if (xinxi_chaxunMenu == null) {
xinxi_chaxunMenu = new JMenu();
xinxi_chaxunMenu.setText("信息查询(C)");
xinxi_chaxunMenu.setMnemonic(KeyEvent.VK_C);
xinxi_chaxunMenu.add(getXiaoshou_chaxunItem());
xinxi_chaxunMenu.add(getShangpin_chaxunItem());
xinxi_chaxunMenu.addSeparator();
xinxi_chaxunMenu.add(getXiaoshou_paihangItem());
}
return xinxi_chaxunMenu;
}
/**
* 初始化(基本资料)菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getJiben_ziliaoMenu() {
if (jiben_ziliaoMenu == null) {
jiben_ziliaoMenu = new JMenu();
jiben_ziliaoMenu.setText("基本资料(B)");
jiben_ziliaoMenu.setMnemonic(KeyEvent.VK_B);
jiben_ziliaoMenu.add(getShangpin_guanliItem());
jiben_ziliaoMenu.add(getKehu_guanliItem());
jiben_ziliaoMenu.add(getGys_guanliItem());
jiben_ziliaoMenu.addSeparator();
jiben_ziliaoMenu.add(getJsr_guanliItem());
}
return jiben_ziliaoMenu;
}
/**
* 初始化系统维护菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getXitong_weihuMenu() {
if (xitong_weihuMenu == null) {
xitong_weihuMenu = new JMenu();
xitong_weihuMenu.setText("系统维护(S)");
xitong_weihuMenu.setMnemonic(KeyEvent.VK_S);
xitong_weihuMenu.add(getShuju_beifenItem());
xitong_weihuMenu.addSeparator();
xitong_weihuMenu.add(getMima_xiugaiItem());
xitong_weihuMenu.addSeparator();
xitong_weihuMenu.add(getExitItem());
}
return xitong_weihuMenu;
}
/**
* 初始化窗口菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getChuang_kouMenu() {
if (chuang_kouMenu == null) {
chuang_kouMenu = new JMenu();
chuang_kouMenu.setText("窗口(W)");
chuang_kouMenu.setMnemonic(KeyEvent.VK_W);
chuang_kouMenu.addMenuListener(new MenuListener() {
public void menuSelected(MenuEvent e) {
chuang_kouMenu.removeAll();
chuang_kouMenu.add(getPingpuItem());
chuang_kouMenu.add(getClassAllItem());
chuang_kouMenu.add(getAllIconItem());
chuang_kouMenu.add(getAllResumeItem());
chuang_kouMenu.addSeparator();
int count = 0;
// 获取桌面面板中所有内部窗体
JInternalFrame[] allFrames = desktopPanel.getAllFrames();
// Foreach遍历内部窗体数组
for (final JInternalFrame frame : allFrames) {
String frameTitle = frame.getTitle();
count++; // 窗体计数器
final JMenuItem item = new JMenuItem(count + " "
+ frameTitle); // 创建窗体菜单项
chuang_kouMenu.add(item);// 添加菜单项到菜单中
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {// 处理窗体菜单项的单击事件
frame.setIcon(false);
frame.setSelected(true);
} catch (PropertyVetoException e1) {
e1.printStackTrace();
}
}
});
}
}
public void menuDeselected(javax.swing.event.MenuEvent e) {
}
public void menuCanceled(javax.swing.event.MenuEvent e) {
}
});
}
return chuang_kouMenu;
}
/**
* 初始化(帮助)菜单的方法
*
* @return javax.swing.JMenu
*/
public JMenu getBang_zhuMenu() {
if (bang_zhuMenu == null) {
bang_zhuMenu = new JMenu();
bang_zhuMenu.setText("帮助(H)");
bang_zhuMenu.setMnemonic(KeyEvent.VK_H);
bang_zhuMenu.add(getGuanyu_Item());
bang_zhuMenu.add(getBugItem());
bang_zhuMenu.add(getFangwen_wangzhanItem());
}
return bang_zhuMenu;
}
/**
* 初始化(关于)菜单项的方法
*
* @return javax.swing.JMenuItem
*/
private JMenuItem getGuanyu_Item() {
if (guanyu_Item == null) {
guanyu_Item = new JMenuItem();
guanyu_Item.setText("关于");
guanyu_Item.setIcon(new ImageIcon(getClass().getResource(
"/res/icon/guanyu.png")));
URL url = DesktopPanel.class.getResource("/res/about.jpg");
ImageIcon aboutImage = new ImageIcon(url);
final JLabel imgLabel = new JLabel(aboutImage);
imgLabel.setVisible(false);
desktopPanel.add(imgLabel);
desktopPanel.setLayer(imgLabel, Integer.MAX_VALUE);
guanyu_Item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int dw = desktopPanel.getWidth();
int dh = desktopPanel.getHeight();
imgLabel.setBounds((dw - 500) / 2, (dh - 350) / 2, 500, 350);
imgLabel.setVisible(true);
}
});
imgLabel.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
imgLabel.setVisible(false);
}
});
}
return guanyu_Item;
}
/**
* 初始化(联系技术支持)菜单项的方法
*
* @return javax.swing.JMenuItem
*/
public JMenuItem getBugItem() {
if (bugItem == null) {
bugItem = new JMenuItem();
bugItem.setText("联系技术支持");
bugItem.setIcon(new ImageIcon(getClass().getResource(
"/res/icon/jishu_zhichi.png")));
bugItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (Desktop.isDesktopSupported()) {
Desktop desktop = Desktop.getDesktop();
try {
URI uri = new URI("mailto:tmoonbook@sina.com");
desktop.mail(uri);
} catch (Exception e1) {
e1.printStackTrace();
}
}
}
});
}
return bugItem;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -