《文本编辑器代码,java.docx》由会员分享,可在线阅读,更多相关《文本编辑器代码,java.docx(8页珍藏版)》请在三一办公上搜索。
1、文本编辑器代码,javaimport java.awt.*;import java.awt.event.*;import java.io.*;import javax.swing.*;import javax.swing.text.*;/简单的文本编辑器public class EditorDemo extends JFrame JTextPane textPane = new JTextPane; /文本窗格,编辑窗口JLabel statusBar = new JLabel; /状态栏JFileChooser filechooser = new JFileChooser; /文件选择器pu
2、blic EditorDemo /构造函数super(简单的文本编辑器); /调用父类构造函数Action actions = /Action数组,各种操作命令new NewAction,new OpenAction,new SaveAction,new CutAction,new CopyAction,new PasteAction,new AboutAction,new ExitAction;setJMenuBar(createJMenuBar(actions); /设置菜单栏Container container = getContentPane; /得到容器container.add(
3、createJToolBar(actions), BorderLayout.NORTH); /增加工具栏container.add(textPane, BorderLayout.CENTER); /增加文本窗格container.add(statusBar, BorderLayout.SOUTH); /增加状态栏setSize(330, 200); /设置窗口尺寸setVisible(true); /设置窗口可视setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /关闭窗口时退出程序private JMenuBar createJMenuBar(Ac
4、tion actions) /创建菜单栏JMenuBar menubar = new JMenuBar; /实例化菜单栏JMenu menuFile = new JMenu(文件); /实例化菜单JMenu menuEdit = new JMenu(编辑);JMenu menuAbout = new JMenu(帮助);menuFile.add(new JMenuItem(actions0); /增加新菜单项menuFile.add(new JMenuItem(actions1);menuFile.add(new JMenuItem(actions2);menuFile.add(new JMe
5、nuItem(actions7);menuEdit.add(new JMenuItem(actions3);menuEdit.add(new JMenuItem(actions4);menuEdit.add(new JMenuItem(actions5);menuAbout.add(new JMenuItem(actions6);menubar.add(menuFile); /增加菜单menubar.add(menuEdit);menubar.add(menuAbout);return menubar; /返回菜单栏private JToolBar createJToolBar(Action
6、actions) /创建工具条JToolBar toolBar = new JToolBar; /实例化工具条for (int i = 0; i < actions.length; i+) JButton bt = new JButton(actionsi); /实例化新的按钮bt.setRequestFocusEnabled(false); /设置不需要焦点toolBar.add(bt); /增加按钮到工具栏return toolBar; /返回工具栏class NewAction extends AbstractAction /新建文件命令public NewAction super(
7、新建);public void actionPerformed(ActionEvent e) textPane.setDocument(new DefaultStyledDocument); /清空文档class OpenAction extends AbstractAction /打开文件命令public OpenAction super(打开);public void actionPerformed(ActionEvent e) int i = filechooser.showOpenDialog(EditorDemo.this); /显示打开文件对话框if (i = JFileChoos
8、er.APPROVE_OPTION) /点击对话框中打开选项File f = filechooser.getSelectedFile; /得到选择的文件try InputStream is = new FileInputStream(f); /得到文件输入流textPane.read(is, d); /读入文件到文本窗格 catch (Exception ex) ex.printStackTrace; /输出出错信息class SaveAction extends AbstractAction /保存命令public SaveAction super(保存);public void actio
9、nPerformed(ActionEvent e) int i = filechooser.showSaveDialog(EditorDemo.this); /显示保存文件对话框if (i = JFileChooser.APPROVE_OPTION) /点击对话框中保存按钮File f = filechooser.getSelectedFile; /得到选择的文件try FileOutputStream out = new FileOutputStream(f); /得到文件输出流out.write(textPane.getText.getBytes); /写出文件 catch (Except
10、ion ex) ex.printStackTrace; /输出出错信息class ExitAction extends AbstractAction /退出命令public ExitAction super(退出);public void actionPerformed(ActionEvent e) System.exit(0); /退出程序class CutAction extends AbstractAction /剪切命令public CutAction super(剪切);public void actionPerformed(ActionEvent e) textPane.cut;
11、/调用文本窗格的剪切命令 class CopyAction extends AbstractAction /拷贝命令public CopyAction super(拷贝);public void actionPerformed(ActionEvent e) textPane.copy; /调用文本窗格的拷贝命令class PasteAction extends AbstractAction /粘贴命令public PasteAction super(粘贴);public void actionPerformed(ActionEvent e) textPane.paste; /调用文本窗格的粘贴命令class AboutAction extends AbstractAction /关于选项命令public AboutAction super(关于);public void actionPerformed(ActionEvent e) JOptionPane.showMessageDialog(EditorDemo.this, 简单的文本编辑器演示); /显示软件信息public static void main(String args) new EditorDemo;