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

📄 texteditorapp.java.bak

📁 用java编写的简单的记事本
💻 BAK
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

//class 
class TextEditorFrame extends JFrame
{
	File file = null;
	Color color = Color.black;
	Font font;
	//
	TextEditorFrame()
	{
		initTextPane();
		initMenu();
		initAboutDialog();
		initToolBar();
		
	}
	//1.1
	void initTextPane()	
	{
	  getContentPane().add( new JScrollPane(text));	
	}
	
	//1.2
	JTextPane text = new JTextPane();
	JFileChooser filechooser = new JFileChooser();
	JColorChooser colorchooser = new JColorChooser();
	JDialog about = new JDialog(this);
	JMenuBar menubar = new JMenuBar();
	
    //super Menue	
	JMenu [] menus= new JMenu[]
	{
		new JMenu("File"),
		new JMenu("Edit"),
		new JMenu("Help"),
	};
	
	//sub Menue	
	JMenuItem menuitems [][] =new JMenuItem[][]
	{
		{
			new JMenuItem("New"),
			new JMenuItem("Open..."),
			new JMenuItem("Save..."),
			new JMenuItem("Exit")
		},
		{
			new JMenuItem("Copy"),
			new JMenuItem("Cut"),
			new JMenuItem("Paste"),
			new JMenuItem("Undo"),
			new JMenuItem("Font"),
			new JMenuItem("Color...")
		},
		
		{
			new JMenuItem("About")
		}
	};
	//2
	void initMenu()
	{
		for(int i=0;i<menus.length;i++)
		{
			menubar.add(menus[i]);
			for(int j=0;j<menuitems[i].length;j++)
			{
				menus[i].add(menuitems[i][j]);
				
				menuitems[i][j].addActionListener(action);
			}
		}
		
		this.setJMenuBar(menubar);
	}
	
	//3
	ActionListener action = new ActionListener()
	{
		public void actionPerformed(ActionEvent e)
		{
			JMenuItem mi = (JMenuItem)e.getSource();
			
			String id = mi.getText();
			if(id.equals("New")){
				text.setText("");
				file = null;
			}else if(id.equals("Open...")){
				if(file != null)
				  filechooser.setSelectedFile(file);
				
				int returnVal = filechooser.showOpenDialog(TextEditorFrame.this);
				
				if(returnVal == JFileChooser.APPROVE_OPTION){
					file = filechooser.getSelectedFile();
					openFile();
				}				  
			}
			else if(id.equals("Save...")){
				if(file != null)
				  filechooser.setSelectedFile(file);
				
				int returnVal = filechooser.showSaveDialog(TextEditorFrame.this);
				
				if(returnVal == JFileChooser.APPROVE_OPTION){
					file = filechooser.getSelectedFile();
					saveFile();
				}}else if(id.equals("Exit")){
					System.exit(0);
				}else if(id.equals("Cut")){
					text.cut();
				}else if(id.equals("Copy")){
					text.copy();
				}else if(id.equals("Paste")){
					text.paste();
			    }else if(id.equals("Undo")){
			    	text.notify();
			    }else if(id.equals("Font")){
			    	
			    
			    
				}else if(id.equals("Color...")){					
					color = JColorChooser.showDialog(TextEditorFrame.this,"",color);					
					text.setForeground(color);										
				}else if(id.equals("About")){
					about.setSize(100,50);
					about.show();
				}
				
            }
		};			
      	
		
	

//----------------------------------------------------------------
//saveFile	
    void saveFile()
    {
    	try{
    		FileWriter fw = new FileWriter(file);
    		fw.write(text.getText());
    		fw.close();
    	}
    	catch(Exception e)
    	{
    		e.printStackTrace();
    	}
    }
 //---------------------------------------------------------------
 //openFile
    void openFile()
    {
    	try{
    		FileReader fr = new FileReader(file);
    		int len = (int) file.length();
    		char [] buffer = new char[len];
    		fr.read(buffer,0,len);
    		fr.close();
    		text.setText(new String(buffer));
       	}
       	catch(Exception e)
       	{
       		e.printStackTrace();
       	}
    }	
//--------------------------------------------------------------
//my initAboutDialog	
	void initAboutDialog()
	{
		about.getContentPane().add(new JLabel("my TextFileEditor1.0"));
		about.setModal(true);
		about.setSize(100,50);
	}
//---------------------------------------------------------------	
    //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@	
	JToolBar toolbar = new JToolBar();
	JButton [] buttons = new JButton[]
	{
		new JButton("",new ImageIcon("copy.jpg")),
		
		new JButton("",new ImageIcon("cut.jpg")),
		
		new JButton("",new ImageIcon("paste.jpg"))
	};
	//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//-------------------------------------------------------------------------------------------------------------------
//my initToolBar	
	void initToolBar()
	{
		for(int i=0; i<buttons.length;i++)
				    toolbar.add(buttons[i]);
		buttons[0].setToolTipText("copy");
		buttons[0].addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				text.copy();
			}
		    });
		
		buttons[1].setToolTipText("cut");
		buttons[1].addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				text.cut();
			}
		   });
		
		buttons[2].setToolTipText("paste");
		buttons[2].addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				text.paste();
			}
		   });
		
		this.getContentPane().add(toolbar,BorderLayout.NORTH);
		
	   }
		
  }


//-----------------------------------------------------------------------------------------------------    	

    
//0.0.0.0.0.0.000.0.0.0.	
 public class TextEditorApp
{
	
  public static void main( String [] args){
	
    TextEditorFrame f = new TextEditorFrame();
    
	f.setTitle(" MY EDIT ");
    f.setSize(800,600);
    f.show();
  }
}
	
	
	
	
	
	
	
	

⌨️ 快捷键说明

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