notepad.java

来自「java图形化界面编程 功能和记事本通讯录相似 记录通讯人的姓名和联系方法等」· Java 代码 · 共 105 行

JAVA
105
字号
package elegate.cn.edu.nju;

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.*;
import java.net.*;
import javax.swing.*;
import javax.swing.border.Border;

/**
 * a very simple note pad
 * @author Elegate,elegate@gmail.com
 * @author cs department of NJU
 */
public class NotePad extends JFrame
{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private JTextArea txtArea;
	
	public NotePad()
	{
		init();
	}
	public NotePad(String filePath)
	{
		init();
		try
		{
			BufferedReader reader = 
				new BufferedReader(new FileReader(filePath));
			readFromFile(reader);
		}
		catch(Exception e)
		{
			
		}
	}
	
	public NotePad(URL url)
	{
		init();
		try
		{
			BufferedReader reader=new BufferedReader
			(new InputStreamReader(url.openStream()));
			readFromFile(reader);
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	
	private void init()
	{
		
		/*JMenu mnuFile=new JMenu("File");
		JMenuItem mnuSave=new JMenuItem("Save as");
		JMenuItem mnuOpen=new JMenuItem("Open");
		*/
		txtArea=new JTextArea(20,50);
		txtArea.setLineWrap(true);
		txtArea.setWrapStyleWord(true);
		
		Border border =BorderFactory.createTitledBorder("Help");
		JScrollPane pane=new JScrollPane(txtArea);
		pane.setBorder(border);
		this.getContentPane().add(pane,BorderLayout.CENTER);
		this.pack();
		Dimension d=Toolkit.getDefaultToolkit
		().getScreenSize();
		
		Dimension size=this.getSize();
		this.setLocation((d.width-size.width)/2
				,(d.height-size.height)/2);
		this.addWindowFocusListener(new WindowAdapter(){
			public void windowClosing(WindowEvent we)
			{
				setVisible(true);
				dispose();
			}
		});
	}	
	
	private void readFromFile(BufferedReader reader)
	{
		String line=null;
		try
		{
			while((line=reader.readLine())!=null)
			{
				txtArea.append(line+"\n");
			}
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
}

⌨️ 快捷键说明

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