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

📄 ctbeditframe.java

📁 访windows记事本
💻 JAVA
字号:
//package swjtu.ctb;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*;
import javax.swing.event.*;

public class CTBEditFrame extends JFrame {
 	JPanel panelMain = new JPanel();
 	Document document = null;
 	JTextArea textArea = new JTextArea();
 	JScrollPane scrollPane = new JScrollPane(textArea);
 	EditController controller;
 
 	//------  定义菜单变量   ------//
 	JMenuBar menuBar = new JMenuBar();
 	JMenu menuFile = new JMenu("文件(F)");
 	JMenu menuEdit = new JMenu("编辑(E)");
 	JMenu menuFormat = new JMenu("格式(O)");
 	JMenu menuHelp = new JMenu("帮助(H)");
 	JMenuItem itemNew = new JMenuItem("新建(N)",'N');
 	
 	JMenuItem itemOpen = new JMenuItem("打开(O)",'O');
 	JMenuItem itemSave = new JMenuItem("保存(S)",'S');
 	JMenuItem itemSaveAs = new JMenuItem("另存为(A)",'A');
 	JMenuItem itemExit = new JMenuItem("退出(X)",'X');
 	JMenuItem itemUndo = new JMenuItem("撤消(U)",'U');
 	JMenuItem itemRedo = new JMenuItem("重做(B)",'B');
 	JMenuItem itemCut = new JMenuItem("剪切(T)",'T');
 	JMenuItem itemCopy = new JMenuItem("复制(C)",'C');
 	JMenuItem itemPaste = new JMenuItem("粘贴(P)",'P');
 	JMenuItem itemFont = new JMenuItem("字体");
 	JMenuItem itemBackground = new JMenuItem("背景");
 	JMenuItem itemLine = new JMenuItem("自动换行(W)",'W');
 	JMenuItem itemFind = new JMenuItem("查找(F)",'F');
 	JMenuItem itemReplace = new JMenuItem("替换(R)",'R');
 	JMenuItem itemSelectAll = new JMenuItem("全选(A)",'A');
 	JMenuItem itemAbout = new JMenuItem("关于");
 	
 	//---------------------------------------//
 
 	public CTBEditFrame() {
  		super("无标题");
  		this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
  		this.setJMenuBar(menuBar);
  		
  		panelMain = (JPanel)this.getContentPane();
  		panelMain.add(scrollPane); 
  		document = (Document)textArea.getDocument();
  		// 默认为不换行
  		textArea.setLineWrap(false);
  		textArea.setWrapStyleWord(true);   
		  
  		//-- 设置菜单 --//
  		itemUndo.setEnabled(false);
  		itemRedo.setEnabled(false);
	  
  		menuBar.add(menuFile);
  		menuBar.add(menuEdit);
  		menuBar.add(menuFormat);
		menuBar.add(menuHelp);	  
  		menuFile.add(itemNew);
  		menuFile.add(itemOpen);
  		menuFile.add(itemSave);
  		menuFile.add(itemSaveAs);
  		menuFile.addSeparator();
  		menuFile.add(itemExit);
  
  		menuEdit.add(itemUndo);
  		menuEdit.add(itemRedo);
  		menuEdit.addSeparator();
  		menuEdit.add(itemCut);
  		menuEdit.add(itemCopy);
  		menuEdit.add(itemPaste);
  
  		menuEdit.addSeparator();
  		menuEdit.add(itemFind);
  		menuEdit.add(itemReplace);
  		menuEdit.addSeparator();
  		menuEdit.add(itemSelectAll);
  		
  		menuFormat.add(itemLine);
  		menuFormat.addSeparator();
  		menuFormat.add(itemFont);
  		menuFormat.add(itemBackground);
  		
  		menuHelp.add(itemAbout);
  		//----------------------------//
  
  		//--增加菜单的快捷键和图标--//
  		menuFile.setMnemonic('F');
  		menuEdit.setMnemonic('E');
  		menuFormat.setMnemonic('O');
  		menuHelp.setMnemonic('H');
  		
  		
  		itemNew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
  		itemOpen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
  		itemSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
  		itemUndo.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK));
  		itemRedo.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y,InputEvent.CTRL_MASK));
  		itemCut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
  		itemCopy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
  		itemPaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));
  		itemFind.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK));
  		itemReplace.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H,InputEvent.CTRL_MASK));
  		itemAbout.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));  
  		
  		itemCut.setIcon( new ImageIcon("img/cut.gif"));
  		itemCopy.setIcon( new ImageIcon("img/copy.gif"));
  		itemPaste.setIcon( new ImageIcon("img/paste.gif"));
  		itemSave.setIcon( new ImageIcon("img/save.gif"));
  		itemUndo.setIcon( new ImageIcon("img/undo.gif"));
  		itemRedo.setIcon( new ImageIcon("img/redo.gif"));
  		//-- 增加菜单的侦听者 --//
  		controller = new EditController(this);

  		itemNew.addActionListener(controller);
  		itemOpen.addActionListener(controller);
  		itemSave.addActionListener(controller);
  		itemSaveAs.addActionListener(controller);
  		itemExit.addActionListener(controller);
  		itemUndo.addActionListener(controller);
  		itemRedo.addActionListener(controller);
  		itemCut.addActionListener(controller);
  		itemCopy.addActionListener(controller);
  		itemPaste.addActionListener(controller);
  		itemFont.addActionListener(controller);
  		itemBackground.addActionListener(controller);
  		itemFind.addActionListener(controller);
  		itemReplace.addActionListener(controller);
  		itemLine.addActionListener(controller);
  		itemAbout.addActionListener(controller);
  		itemSelectAll.addActionListener(controller);
  		//--------------------------//
  
  		document.addDocumentListener(controller);
  		document.addUndoableEditListener(controller);
  		this.addWindowListener(controller); 
		  
  		this.pack(); 
 	} // end create method 

} // end class

⌨️ 快捷键说明

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