⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsmenubar.java

📁 用JAVA编写的绘图程序 功能简介: 支持存储
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package drawsmart.itsv.menuber;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import drawsmart.itsv.tool.GetResource;
import javax.swing.JColorChooser;
import drawsmart.itsv.framework.JDSExtendDesktopface;
import drawsmart.itsv.FrameSwing;
import drawsmart.itsv.framework.JDSXMLReadWriteface;
import drawsmart.itsv.image.SaveFileAsImg;
import drawsmart.itsv.framework.JDSComponentface;
import drawsmart.itsv.framework.JDSLineface;
import java.awt.event.*;
import drawsmart.itsv.tool.GetResource;
import javax.swing.JOptionPane;
import java.util.zip.*;

/**
 * <p>Title: 工程菜单类</p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */

public class DSMenuBar extends JMenuBar implements ActionListener
{
  // 文件菜单项
  private JMenuItem newItem,  openItem,   closeItem,
                    saveItem, saveAsItem, printItem,
                    exportItem, inputItem,aboutItem;
  //设置菜单项
  private JMenuItem setColorLine,setColorCompone,setLineWidth;

  //远程菜单
  private JMenuItem saveRemote,selectRemote,saveAsRemote;

  //编辑菜单项
  private JMenuItem copyItem,delItem,selectAllItem;

  private JMenuItem unItem,reItem;

  private JMenu fileMenu = new JMenu("文件");

  private JMenu editMenu=new JMenu("编辑");

  private JMenu setupMenu=new JMenu("设置");

  private JMenu textMenu=new JMenu("文本");

  private JMenu windowMenu=new JMenu("窗口");

  private JMenu remoteMenu=new JMenu("远程");

  private JMenu helpMenu=new JMenu("帮助");

  private JFileChooser files;
  private JFileChooser files1;

  private Font myFont=new Font("宋体",12,12);

  //文件选择器
  private FileChooserFilter select1 = null;
  private FileChooserFilter select3 = null;
  private FileChooserFilter select = null;

  //桌面的高级接口
  JDSExtendDesktopface jDSExtendDesktopface;

  //
  FrameSwing frameSwing;

  //换行符
  String newline=System.getProperty("line.separator");

  //生成XML文档
  String encoding=GetResource.getXMLResource("encoding");

  //XML接口
  JDSXMLReadWriteface jDSXMLReadWriteface;

  //保存的文件
  File saveFile=null;

  public DSMenuBar(JDSExtendDesktopface jDSExtendDesktopface,FrameSwing frameSwing,JDSXMLReadWriteface jDSXMLReadWriteface)
  {
    this(jDSExtendDesktopface,frameSwing,jDSXMLReadWriteface,null);
  }

  public DSMenuBar(JDSExtendDesktopface jDSExtendDesktopface,FrameSwing frameSwing,JDSXMLReadWriteface jDSXMLReadWriteface,File saveFile)
  {
    this.jDSExtendDesktopface=jDSExtendDesktopface;

    this.frameSwing=frameSwing;

    this.jDSXMLReadWriteface=jDSXMLReadWriteface;

    this.saveFile=saveFile;

    //文件选择器
    select1 = new FileChooserFilter("*.jpg", "jpg");
    select3 = new FileChooserFilter("*.png", "png");
    select = new FileChooserFilter("*.edr", "edr");


    files=new JFileChooser();
    files1=new JFileChooser();

    /**
     * 定义文件菜单
     */
    newItem = fileMenu.add("新建流程");
    newItem.setFont(myFont);
    //ImageIcon newicon=new ImageIcon(getClass().getResource("/images/newobj.gif"));
    ImageIcon newicon=GetResource.getImage("newobj.gif");
    newItem.setIcon(newicon);

    openItem = fileMenu.add("打开流程");
    openItem.setFont(myFont);
    //ImageIcon openicon=new ImageIcon(getClass().getResource("/images/opendrw.gif"));
    ImageIcon openicon=GetResource.getImage("opendrw.gif");
    openItem.setIcon(openicon);

    saveItem = fileMenu.add("保存流程");
    saveItem.setFont(myFont);
    //ImageIcon saveicon=new ImageIcon(getClass().getResource("/images/savedrw.gif"));
    ImageIcon saveicon=GetResource.getImage("savedrw.gif");
    saveItem.setIcon(saveicon);

    //添加分割线
    fileMenu.addSeparator();

    saveAsItem = fileMenu.add("另存流程");
    saveAsItem.setFont(myFont);
    //ImageIcon saveAsicon=new ImageIcon(getClass().getResource("/images/savedrw.gif"));
    ImageIcon saveAsicon=GetResource.getImage("savedrw.gif");
    saveAsItem.setIcon(saveAsicon);

    /**
    printItem=fileMenu.add("打印");
    printItem.setFont(myFont);
    ImageIcon printicon=new ImageIcon(getClass().getResource("/images/print.gif"));
    printItem.setIcon(printicon);
**/

    //添加分割线
    fileMenu.addSeparator();

    exportItem =fileMenu.add("导出...");
    exportItem.setFont(myFont);
    //ImageIcon exporticon=new ImageIcon(getClass().getResource("/images/export.gif"));
    ImageIcon exporticon=GetResource.getImage("export.gif");
    exportItem.setIcon(exporticon);

    /*
    inputItem=fileMenu.add("   导入...");
    inputItem.setFont(myFont);
    //ImageIcon inputicon=new ImageIcon(getClass().getResource("/images/savedrw.gif"));
    //inputItem.setIcon(inputicon);
*/

    closeItem = fileMenu.add("关闭流程");
    closeItem.setFont(myFont);
    //ImageIcon closeicon=new ImageIcon(getClass().getResource("/images/mainclose.gif"));
    ImageIcon closeicon=GetResource.getImage("mainclose.gif");
    closeItem.setIcon(closeicon);

    fileMenu.setFont(myFont);
    editMenu.setFont(myFont);
    setupMenu.setFont(myFont);
    textMenu.setFont(myFont);
    remoteMenu.setFont(myFont);
    windowMenu.setFont(myFont);
    helpMenu.setFont(myFont);

    //添加设置菜单项
    setColorLine = setupMenu.add("设置组件边框颜色");
    setColorLine.setFont(myFont);
    ImageIcon coloricon=GetResource.getImage("color.gif");
    setColorLine.setIcon(coloricon);

    setColorCompone = setupMenu.add("设置组件填充颜色");
    setColorCompone.setFont(myFont);
    //ImageIcon coloricon=GetResource.getImage("color.gif");
    setColorCompone.setIcon(coloricon);

    setupMenu.addSeparator();

    setLineWidth=setupMenu.add("设置线宽和透明--全局设置");
    setLineWidth.setFont(myFont);

    //关于
    aboutItem=new JMenuItem("关于 drawflow3.0 Beta");
    aboutItem.setFont(myFont);
    helpMenu.add(aboutItem);

    //添加编辑菜单项
    unItem=new JMenuItem("撤销");
    unItem.setFont(myFont);
    ImageIcon unicon=GetResource.getImage("undo.gif");
    unItem.setIcon(unicon);
    //editMenu.add(unItem);

    editMenu.addSeparator();

    copyItem=new JMenuItem("复制到这里");
    copyItem.setFont(myFont);
    //ImageIcon coloricon=GetResource.getImage("button.gif");
    //copyItem.setIcon(coloricon);
    ImageIcon copyicon=GetResource.getImage("copy.gif");
    copyItem.setIcon(copyicon);
    editMenu.add(copyItem);

    delItem=new JMenuItem("删除选中组件");
    delItem.setFont(myFont);
    ImageIcon delicon=GetResource.getImage("del.gif");
    delItem.setIcon(delicon);
    editMenu.add(delItem);

    editMenu.addSeparator();

    selectAllItem=new JMenuItem("选择全部组件");
    selectAllItem.setFont(myFont);
    //ImageIcon coloricon=GetResource.getImage("button.gif");
    //selectAllItem.setIcon(coloricon);
    editMenu.add(selectAllItem);

    //添加远程组件
    saveRemote=new JMenuItem("保存到服务器");
    saveRemote.setFont(myFont);
    remoteMenu.add(saveRemote);

    selectRemote=new JMenuItem("读取远程数据");
    selectRemote.setFont(myFont);
    remoteMenu.add(selectRemote);

    saveAsRemote=new JMenuItem("另存到服务器");
    saveAsRemote.setFont(myFont);
    remoteMenu.add(saveAsRemote);
    /**
     *添加工具条
     */
    this.add(fileMenu);
    this.add(editMenu);
    this.add(setupMenu);
    //this.add(textMenu);
    //this.add(windowMenu);
    //this.add(remoteMenu);
    this.add(helpMenu);

    newItem.addActionListener(this);
    /**
     * 添加事件
     */
    saveAsItem.addActionListener(this);

    /**
     * 添加事件
     */
    openItem.addActionListener(this);

    /**
     * 添加事件
     */
    saveItem.addActionListener(this);

    /**
     * 添加事件
     */
    exportItem.addActionListener(this);

    /**
     * 添加事件
     */
    closeItem.addActionListener(this);

    /**
     * 添加事件
     */
    setColorLine.addActionListener(this);

    /**
     * 添加事件
     */
    setColorCompone.addActionListener(this);

    /**
     * 添加事件
     */
    setLineWidth.addActionListener(this);

    /**
     * 添加事件
     */
    aboutItem.addActionListener(this);

    /**
     * 添加事件
     */
    unItem.addActionListener(this);

    /**
     * 添加事件
     */
    copyItem.addActionListener(this);

    /**
     * 添加事件
     */
    delItem.addActionListener(this);

    /**
     * 添加事件
     */
    selectAllItem.addActionListener(this);

    /**
     * 添加事件
     */
    saveRemote.addActionListener(this);

    /**
     * 添加事件
     */
    selectRemote.addActionListener(this);

    /**
     * 添加事件
     */
    saveAsRemote.addActionListener(this);

    files1.addChoosableFileFilter(select1);
    files1.addChoosableFileFilter(select3);

    files.addChoosableFileFilter(select);

    //定义快捷方式
    fileMenu.setMnemonic('T');

    newItem.setAccelerator(KeyStroke.getKeyStroke('N',Event.CTRL_MASK ));
    openItem.setAccelerator(KeyStroke.getKeyStroke('O',Event.CTRL_MASK ));
    saveItem.setAccelerator(KeyStroke.getKeyStroke('S',Event.CTRL_MASK ));
    exportItem.setAccelerator(KeyStroke.getKeyStroke('E',Event.CTRL_MASK ));

    copyItem.setAccelerator(KeyStroke.getKeyStroke('C',Event.CTRL_MASK ));
    //delItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE));
    selectAllItem.setAccelerator(KeyStroke.getKeyStroke('A',Event.CTRL_MASK ));
    delItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE,0));
    unItem.setAccelerator(KeyStroke.getKeyStroke('Z',Event.CTRL_MASK ));
  }

  /**
   * 单击事件
   * @param e
   */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -