下面是我写的java记事本,自己觉得写得还可以,希望大家多多支持!!谢谢
UploadFiles/2007-6/610980990.rar
//file name : NotePad3.java
package note;
import java.io.*;
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
import java.text.*;
import javax.swing.border.BevelBorder;
public class NotePad3 extends JFrame implements ActionListener,WindowListener,CaretListener,KeyListener,MouseListener
//继承JFrame类
//同时实现接口ActionListener,WindowListener来检测用户事件,和窗体事件
//CaretListener接口表示文本框有新输入等操作进发生
//..................
{
NotePad3()
{
super("No Tiltle-----NotePad");
setBounds(200,150,550,350); //初始化运行时窗体大小
Text(); //添加记事本程序主体--文本框
MenuBar(); //为窗体添加菜单
ToolBar(); //为窗体添加工具栏
StatusBar(); //为窗体添加状态栏
java.util.Timer timer = new java.util.Timer();
timer.schedule(new java.util.TimerTask()
{
public void run()
{
lab_statusBar3.setText(time()); //调用方法更新状态栏时间
}
}, 0, 1000); //一秒(=1000ms)钟更新一次
Image image1=java.awt.Toolkit.getDefaultToolkit().getImage("pic/icon.gif");
//this.setUndecorated(true);
//this.getRootPane().setWindowDecorationStyle(JRootPane.FRAME); //以上两行设置独特的窗体风格
this.setDefaultLookAndFeelDecorated(true);//获得当前平台窗体风格
this.setIconImage(image1);
this.addWindowListener(this);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
private void Text()
{
//添加文本框,并对其进行设置
text=new JTextPane();
text.setFont(ft);
text.setBorder(BorderFactory.createLineBorder(Color.white));
text.addCaretListener(this);
text.addKeyListener(this);
text.setCaretColor(Color.red); //设置文本框内光标颜色红色
scr=new JScrollPane(text);
this.add(scr,BorderLayout.CENTER);
}
private void StatusBar()
{
//添加状态栏,并设置状态栏
panStatusBar=new JPanel(new GridLayout(1,8));
//label_1.setBorder(new BevelBorder(BevelBorder.RAISED));
//lab_statusBar2=new JLabel("行 "+row+" 列 "+colum+" 字节数: "+text.getText().length(),JLabel.LEFT);
lab_statusBar2=new JLabel(BytesTotal(),JLabel.LEFT); //调用方法:BytesTotal()实现文件字节数统计
lab_statusBar1.setBorder(BorderFactory.createLineBorder(Color.white));
panStatusBar.add(lab_statusBar1);
panStatusBar.add(lab_statusBar2);
panStatusBar.add(lab_statusBar3);
panStatusBar.add(lab_statusBar4);
//PopupMenu(1);
this.getContentPane().add(panStatusBar, BorderLayout.SOUTH);
}
private void MenuBar()
{
//为窗体添加菜单
this.setJMenuBar(menubar);
menu1.add(menuitem11);
menu1.add(menuitem12);
menu1.add(menuitem13);