?? jishiben.java
字號(hào):
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.FileDialog;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowEvent;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.KeyStroke;
import javax.swing.SwingConstants;
public class JiShiBen extends JFrame implements ActionListener, KeyListener, MouseListener{
int X = 1, Y = 1;
Fontdialog s1 = new Fontdialog(this,"字體" ,true);
JDialog TihuanDialog = new JDialog(this,"搜索/替換",false);
JPanel searchpanel=new JPanel();
JPanel searchbuttonpanel=new JPanel();
JPanel searchtextpanel=new JPanel();
JPanel changepanel=new JPanel();
JPanel changebuttonpanel=new JPanel();
JPanel changetextpanel=new JPanel();
boolean isfont = false;
static JiShiBen frm = new JiShiBen();
Container cp = this.getContentPane();
JMenuBar bar = new JMenuBar();
JLabel searchtip=new JLabel("搜索關(guān)鍵字:");
JLabel changetip=new JLabel("替換為: ");
JLabel setBar = new JLabel();
JTextField changetext=new JTextField("",10);
JTextField searchtext=new JTextField("",10);
JTextArea area = new JTextArea();
JScrollPane p1 = new JScrollPane(area);
JCheckBoxMenuItem gou = new JCheckBoxMenuItem();
FileDialog ofd = new FileDialog(frm, "打開(kāi)");
FileDialog sfd = new FileDialog(frm, "保存", FileDialog.SAVE);
JMenu feild = new JMenu("文件(F)");
JMenu bianji = new JMenu("編輯(E)");
JMenu geshi = new JMenu("格式(O)");
JMenu find = new JMenu("查看(V)");
JMenu help = new JMenu("幫助(H)");
JMenuItem newj = new JMenuItem("新建(N)");
JMenuItem open = new JMenuItem("打開(kāi)(O)...");
JMenuItem save = new JMenuItem("保存(S)");
JMenuItem saveother = new JMenuItem("另存為(A)...");
JMenuItem yemian = new JMenuItem("頁(yè)面設(shè)置(U)...");
JMenuItem dayin = new JMenuItem("打印(P)...");
JMenuItem exit = new JMenuItem("退出(X)");
JMenuItem chexiao = new JMenuItem("撤銷(xiāo)(U)");
JMenuItem jianqie = new JMenuItem("剪切(T)");
JMenuItem fuzhi = new JMenuItem("復(fù)制(C)");
JMenuItem zhantie = new JMenuItem("粘貼(P)");
JMenuItem shanchu = new JMenuItem("刪除(L)");
JMenuItem findf = new JMenuItem("查找(F)...");
JMenuItem findnext = new JMenuItem("查找下一個(gè)(N)");
JMenuItem tihuan = new JMenuItem("替換(R)...");
JMenuItem zhuandao = new JMenuItem("轉(zhuǎn)到(G)...");
JMenuItem all = new JMenuItem("全選(A)");
JMenuItem time = new JMenuItem("時(shí)間/日期(D)");
JMenuItem huanhang = new JMenuItem("自動(dòng)換行(W)");
JMenuItem ziti = new JMenuItem("字體(F)...");
JMenuItem zhuangtai = new JMenuItem("狀態(tài)欄(S)");
JMenuItem help1 = new JMenuItem("幫助主題(H)");
JMenuItem about = new JMenuItem("關(guān)于記事本(A)");
JButton searchok=new JButton("查找下一個(gè)");
JButton searchcancel=new JButton("取消搜索");
JButton changeok=new JButton("替換");
JButton changeall=new JButton("全部替換");
JiShiBen(){
this.setTitle("魔帥出品");
this.setSize(900,550);
this.setLayout(new BorderLayout());
this.init();
this.add(p1,BorderLayout.CENTER);
this.add(bar,BorderLayout.NORTH);
}
void init(){
bar.add(feild);
bar.add(bianji);
bar.add(geshi);
bar.add(find);
bar.add(help);
feild.add(newj);
feild.add(open);
feild.add(save);
feild.add(saveother);
feild.addSeparator();
feild.add(yemian);
feild.add(dayin);
feild.addSeparator();
feild.add(exit);
bianji.add(chexiao);
bianji.addSeparator();
bianji.add(jianqie);
bianji.add(fuzhi);
bianji.add(zhantie);
bianji.add(shanchu);
bianji.addSeparator();
bianji.add(findf);
bianji.add(findnext);
bianji.add(tihuan);
bianji.add(zhuandao);
bianji.addSeparator();
bianji.add(all);
bianji.add(time);
geshi.add(huanhang);
geshi.add(ziti);
find.add(zhuangtai);
help.add(help1);
help.addSeparator();
help.add(about);
TihuanDialog.setResizable(false);
TihuanDialog.setLayout(new BorderLayout());
TihuanDialog.setSize(250,230);
searchpanel.setBorder(BorderFactory.createTitledBorder("搜索"));//加邊框
searchpanel.setLayout(new BoxLayout(searchpanel, BoxLayout.Y_AXIS));//上下的
searchbuttonpanel.setLayout(new FlowLayout());
searchtextpanel.setLayout(new FlowLayout());
searchtextpanel.add(searchtip);
searchtextpanel.add(searchtext);
searchbuttonpanel.add(searchok);
searchbuttonpanel.add(searchcancel);
searchpanel.add(searchtextpanel);
searchpanel.add(searchbuttonpanel);
TihuanDialog.add(searchpanel,BorderLayout.NORTH); //搜索對(duì)話框(搜索)
changepanel.setBorder(BorderFactory.createTitledBorder("替換"));//加邊框
changepanel.setLayout(new BoxLayout(changepanel, BoxLayout.Y_AXIS));//上下的
changebuttonpanel.setLayout(new FlowLayout());
changetextpanel.setLayout(new FlowLayout());
changetextpanel.add(changetip);
changetextpanel.add(changetext);
changebuttonpanel.add(changeok);
changebuttonpanel.add(changeall);
changepanel.add(changetextpanel);
changepanel.add(changebuttonpanel);
TihuanDialog.add(changepanel,BorderLayout.CENTER);
changeok.addActionListener(this);
changeall.addActionListener(this); //搜索對(duì)話框(替換)
setBar = new JLabel("ln " + X + " , " + "col " + Y);
setBar.setHorizontalAlignment(SwingConstants.RIGHT);
setBar.setBorder(BorderFactory.createEtchedBorder());
setBar.setVisible(false);
cp.add(setBar, BorderLayout.SOUTH);
newj.addActionListener(this);
open.addActionListener(this);
save.addActionListener(this);
saveother.addActionListener(this);
yemian.addActionListener(this);
dayin.addActionListener(this);
exit.addActionListener(this);
chexiao.addActionListener(this);
jianqie.addActionListener(this);
fuzhi.addActionListener(this);
zhantie.addActionListener(this);
shanchu.addActionListener(this);
findf.addActionListener(this);
findnext.addActionListener(this);
tihuan.addActionListener(this);
zhuandao.addActionListener(this);
all.addActionListener(this);
time.addActionListener(this);
huanhang.addActionListener(this);
ziti.addActionListener(this);
zhuangtai.addActionListener(this);
help1.addActionListener(this);
about.addActionListener(this);
searchok.addActionListener(this);
searchcancel.addActionListener(this);
area.addKeyListener(this);
area.addMouseListener(this);
newj.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
dayin.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK));
chexiao.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK));
jianqie.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
fuzhi.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
zhantie.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));
findf.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK));
tihuan.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H,InputEvent.CTRL_MASK));
zhuandao.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_G,InputEvent.CTRL_MASK));
all.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));
shanchu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE,0));
time.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F5,0));
newj.setMnemonic(KeyEvent.VK_N);
open.setMnemonic(KeyEvent.VK_O);
save.setMnemonic(KeyEvent.VK_S);
saveother.setMnemonic(KeyEvent.VK_A);
yemian.setMnemonic(KeyEvent.VK_U);
dayin.setMnemonic(KeyEvent.VK_P);
exit.setMnemonic(KeyEvent.VK_X);
chexiao.setMnemonic(KeyEvent.VK_U);
jianqie.setMnemonic(KeyEvent.VK_T);
fuzhi.setMnemonic(KeyEvent.VK_C);
zhantie.setMnemonic(KeyEvent.VK_P);
shanchu.setMnemonic(KeyEvent.VK_L);
findf.setMnemonic(KeyEvent.VK_F);
findnext.setMnemonic(KeyEvent.VK_N);
tihuan.setMnemonic(KeyEvent.VK_R);
zhuandao.setMnemonic(KeyEvent.VK_G);
all.setMnemonic(KeyEvent.VK_A);
time.setMnemonic(KeyEvent.VK_D);
huanhang.setMnemonic(KeyEvent.VK_W);
ziti.setMnemonic(KeyEvent.VK_F);
zhuangtai.setMnemonic(KeyEvent.VK_S);
help.setMnemonic(KeyEvent.VK_H);
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -