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

📄 wbmpeditorframe.java

📁 WAP ide 代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package wbmp;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;import java.io.*;/** * The frame of the WBMP editor.  In addition to defining the frame and the * components, it also provides those components with functionality. * Copyright (c) 2003 * @author Mark Busman * @version 1.0 * * For License and contact information see WBMPEditor.java */public class WBMPEditorFrame extends JFrame {  JPanel contentPane;  JMenuBar MainMenubar = new JMenuBar();  JMenu jMenuFile = new JMenu();  JMenuItem jMenuFileExit = new JMenuItem();  JMenu jMenuHelp = new JMenu();  JMenuItem jMenuHelpAbout = new JMenuItem();  JToolBar MainToolBar = new JToolBar();  JButton ToolbarOpen = new JButton();  JButton ToolbarSave = new JButton();  JButton ToolbarHelp = new JButton();  ImageIcon image1;  ImageIcon image2;  ImageIcon image3;  ImageIcon image4;  ImageIcon image5;  ImageIcon image6;  ImageIcon image7;  BorderLayout borderLayout1 = new BorderLayout();  JToggleButton ToolbarEraser = new JToggleButton();  JToggleButton ToolbarPen = new JToggleButton();  JMenuItem jMenuFileNew = new JMenuItem();  JMenuItem jMenuFileOpen = new JMenuItem();  JMenuItem jMenuFileSave = new JMenuItem();  JMenu jMenuDrawing = new JMenu();  JMenuItem jMenuHelpContents = new JMenuItem();  JButton ToolbarNew = new JButton();  Border border1;  JPanel Mainpanel = new JPanel();  BorderLayout borderLayout2 = new BorderLayout();  JScrollPane jScrollPane1;  JCheckBoxMenuItem jMenuDrawingPen = new JCheckBoxMenuItem();  JCheckBoxMenuItem jMenuDrawingEraser = new JCheckBoxMenuItem();  JPanel Statusbarpanel = new JPanel();  JLabel statusBar = new JLabel();  BorderLayout borderLayout3 = new BorderLayout();  Border border2;  JPanel Pospanel = new JPanel();  Border border3;  GridLayout gridLayout1 = new GridLayout();  JLabel XPoslabel = new JLabel();  JLabel YPoslabel = new JLabel();  // Variables  private Color DrawingColor = Color.black;  private Color BackgroundColor = null;  private boolean Pressing = false;  private boolean Changed = false;  private int ColorMatrix[][];  private int Width = 0;  private int Height = 0;  private String fileName = "";  private boolean Untitled = true;  // Constants  static int LEFT_MOUSE_BUTTON = 16;  static int labelSize = 13;  static Color bkg = new Color(0, 166, 8);  JMenuItem jMenuFilePreview = new JMenuItem();  JLabel Drawinglabel = new JLabel();  /**Construct the frame*/  public WBMPEditorFrame() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  /**Component initialization*/  private void jbInit() throws Exception  {    image1 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("openFile.gif"));    image2 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("closeFile.gif"));    image3 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("help.gif"));    image4 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("newFile.gif"));    image5 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("dummy.gif"));    image6 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("pen.gif"));    image7 = new ImageIcon(wbmp.WBMPEditorFrame.class.getResource("eraser.gif"));    setIconImage(Toolkit.getDefaultToolkit().createImage(WBMPEditorFrame.class.getResource("icon.gif")));    contentPane = (JPanel) this.getContentPane();    border1 = BorderFactory.createLineBorder(Color.white,1);    jScrollPane1 = new JScrollPane(Drawinglabel);    border2 = new EtchedBorder(EtchedBorder.RAISED,Color.white,new Color(142, 142, 142));    border3 = new EtchedBorder(EtchedBorder.RAISED,Color.white,new Color(142, 142, 142));    contentPane.setLayout(borderLayout1);    this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);    this.setSize(new Dimension(400, 300));    this.setTitle("WBMP Editor");    jMenuFile.setText("File");    jMenuFileExit.setText("Exit");    jMenuFileExit.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuFileExit_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuFileExit.addActionListener(new ActionListener()  {      public void actionPerformed(ActionEvent e) {        jMenuFileExit_actionPerformed(e);      }    });    jMenuHelp.setText("Help");    jMenuHelpAbout.setText("About");    jMenuHelpAbout.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuHelpAbout_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuHelpAbout.addActionListener(new ActionListener()  {      public void actionPerformed(ActionEvent e) {        jMenuHelpAbout_actionPerformed(e);      }    });    ToolbarOpen.setIcon(image1);    ToolbarOpen.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarOpen_actionPerformed(e);      }    });    ToolbarOpen.setBorder(null);    ToolbarOpen.setToolTipText("Open an existing file");    ToolbarSave.setIcon(image2);    ToolbarSave.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarSave_actionPerformed(e);      }    });    ToolbarSave.setBorder(null);    ToolbarSave.setToolTipText("Save an existing file");    ToolbarHelp.setIcon(image3);    ToolbarHelp.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarHelp_actionPerformed(e);      }    });    ToolbarHelp.setBorder(null);    ToolbarHelp.setToolTipText("Help");    ToolbarEraser.setPreferredSize(new Dimension(23, 23));    ToolbarEraser.setIcon(image7);    ToolbarEraser.setBorder(null);    ToolbarEraser.setMinimumSize(new Dimension(23, 23));    ToolbarEraser.setToolTipText("Erase with background color");    ToolbarEraser.setMaximumSize(new Dimension(23, 23));    ToolbarEraser.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarEraser_actionPerformed(e);      }    });    ToolbarPen.setPreferredSize(new Dimension(23, 23));    ToolbarPen.setIcon(image6);    ToolbarPen.setBorder(null);    ToolbarPen.setMinimumSize(new Dimension(23, 23));    ToolbarPen.setSelected(true);    ToolbarPen.setToolTipText("Draw in black");    ToolbarPen.setMnemonic('0');    ToolbarPen.setMaximumSize(new Dimension(23, 23));    ToolbarPen.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarPen_actionPerformed(e);      }    });    jMenuFileNew.setIcon(image4);    jMenuFileNew.setText("New");    jMenuFileNew.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuFileNew_actionPerformed(e);      }    });    jMenuFileNew.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuFileNew_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuFileOpen.setIcon(image1);    jMenuFileOpen.setText("Open");    jMenuFileOpen.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuFileOpen_actionPerformed(e);      }    });    jMenuFileOpen.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuFileOpen_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuFileSave.setIcon(image2);    jMenuFileSave.setText("Save");    jMenuFileSave.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuFileSave_actionPerformed(e);      }    });    jMenuFileSave.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuFileSave_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuDrawing.setText("Drawing");    jMenuHelpContents.setIcon(image3);    jMenuHelpContents.setText("Contents");    jMenuHelpContents.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuHelpContents_actionPerformed(e);      }    });    jMenuHelpContents.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuHelpContents_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    ToolbarNew.setBorder(null);    ToolbarNew.setToolTipText("Create a new image file");    ToolbarNew.setIcon(image4);    ToolbarNew.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        ToolbarNew_actionPerformed(e);      }    });    MainToolBar.setFloatable(false);    Mainpanel.setLayout(borderLayout2);    jMenuDrawingPen.setIcon(image6);    jMenuDrawingPen.setText("Pen");    jMenuDrawingPen.setSelected(true);    jMenuDrawingPen.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuDrawingPen_actionPerformed(e);      }    });    jMenuDrawingEraser.setIcon(image7);    jMenuDrawingEraser.setText("Eraser");    jMenuDrawingEraser.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuDrawingEraser_actionPerformed(e);      }    });    statusBar.setText("Ready");    Statusbarpanel.setLayout(borderLayout3);    Mainpanel.setBorder(BorderFactory.createLoweredBevelBorder());    Pospanel.setBorder(border3);    Pospanel.setMaximumSize(new Dimension(130, 17));    Pospanel.setMinimumSize(new Dimension(130, 17));    Pospanel.setPreferredSize(new Dimension(130, 17));    Pospanel.setLayout(gridLayout1);    gridLayout1.setColumns(2);    XPoslabel.setHorizontalAlignment(SwingConstants.LEFT);    XPoslabel.setHorizontalTextPosition(SwingConstants.LEADING);    XPoslabel.setText("X: 0");    YPoslabel.setHorizontalAlignment(SwingConstants.LEFT);    YPoslabel.setText("Y: 0");    jMenuFilePreview.setEnabled(false);    jMenuFilePreview.setText("Preview");    jMenuFilePreview.addMouseListener(new java.awt.event.MouseAdapter() {      public void mouseEntered(MouseEvent e) {        jMenuFilePreview_mouseEntered(e);      }      public void mouseExited(MouseEvent e) {        MenuMouseExitHandler(e);      }    });    jMenuFilePreview.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jMenuFilePreview_actionPerformed(e);      }    });    Drawinglabel.setBackground(Color.red);    Drawinglabel.setToolTipText("");    MainToolBar.add(ToolbarNew, null);    MainToolBar.add(ToolbarOpen);    MainToolBar.add(ToolbarSave);    MainToolBar.addSeparator();    MainToolBar.add(ToolbarPen, null);    MainToolBar.add(ToolbarEraser, null);    MainToolBar.addSeparator();    MainToolBar.add(ToolbarHelp);    jMenuFile.add(jMenuFileNew);    jMenuFile.add(jMenuFileOpen);    jMenuFile.add(jMenuFileSave);    jMenuFile.addSeparator();    jMenuFile.add(jMenuFilePreview);    jMenuFile.addSeparator();    jMenuFile.add(jMenuFileExit);    jMenuDrawing.add(jMenuDrawingPen);    jMenuDrawing.add(jMenuDrawingEraser);    jMenuHelp.add(jMenuHelpContents);    jMenuHelp.addSeparator();    jMenuHelp.add(jMenuHelpAbout);    MainMenubar.add(jMenuFile);    MainMenubar.add(jMenuDrawing);    MainMenubar.add(jMenuHelp);    this.setJMenuBar(MainMenubar);    Mainpanel.add(jScrollPane1, BorderLayout.CENTER);    jScrollPane1.getViewport().add(Drawinglabel, null);    contentPane.add(Statusbarpanel, BorderLayout.SOUTH);    Statusbarpanel.add(statusBar, BorderLayout.CENTER);    Statusbarpanel.add(Pospanel, BorderLayout.EAST);    Pospanel.add(XPoslabel, null);    Pospanel.add(YPoslabel, null);    contentPane.add(MainToolBar, BorderLayout.NORTH);    contentPane.add(Mainpanel, BorderLayout.CENTER);  }  /**File | Exit action performed*/  private void jMenuFileExit_actionPerformed(ActionEvent e) {    this.setVisible(false);    dispose();  }  /**Help | About action performed*/  private void jMenuHelpAbout_actionPerformed(ActionEvent e) {    WBMPEditorFrame_AboutBox dlg = new WBMPEditorFrame_AboutBox(this);    Dimension dlgSize = dlg.getPreferredSize();    Dimension frmSize = getSize();    Point loc = getLocation();    dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y);    dlg.setModal(true);    dlg.show();  }  /**Overridden so we can exit when window is closed*/  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      jMenuFileExit_actionPerformed(null);    }  }  // Statusbar messages generated by menus  /** Menu Listener for the mouseExit event.  @param MouseEvent e  */  private void MenuMouseExitHandler(MouseEvent e) {    statusBar.setText("Ready");  }  /** Mouse listener for mouseEntered event  @param MouseEvent e  */  private void jMenuFileNew_mouseEntered(MouseEvent e) {    statusBar.setText("Create a new file");  }  /** Mouse listener for mouseEntered event  @param MouseEvent e  */  private void jMenuFileOpen_mouseEntered(MouseEvent e) {    statusBar.setText("Open an existing file");  }  /** Mouse listener for mouseEntered event  @param MouseEvent e  */  private void jMenuFileSave_mouseEntered(MouseEvent e) {    statusBar.setText("Save the file");  }  /** Mouse listener for mouseEntered event  @param MouseEvent e  */  private void jMenuFilePreview_mouseEntered(MouseEvent e) {    statusBar.setText("preview the drawing in actual size");  }  /** Mouse listener for mouseEntered event  @param MouseEvent e  */

⌨️ 快捷键说明

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