文本编辑框小程序

简易的文本编辑框小程序:

import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;class TextEditorFrame extends JFrame{File file=null; Color color=Color.red;TextEditorFrame(){initTextPane();initAboutDialog();initToolBar();initMenu(); }void initTextPane(){getContentPane().add(new JScrollPane(text)); }JTextPane text=new JTextPane(); //这是用来做文本框的JFileChooser filechooser=new JFileChooser(); //文件选择框JColorChooser colorchooser=new JColorChooser();//JDialog about=new JDialog(this); //关于对话框JMenuBar menubar=new JMenuBar();//菜单JMenu[] menus=new JMenu[]{new JMenu("文件"),new JMenu("编辑"),new JMenu("帮助")};JMenuItem menuitems[][]=new JMenuItem[][]{{new JMenuItem("新建"),new JMenuItem("打开"),new JMenuItem("保存"),new JMenuItem("退出")},{new JMenuItem("复制"),new JMenuItem("剪切"),new JMenuItem("粘贴"),},{new JMenuItem("关于")}};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);}ActionListener action=new ActionListener(){public void actionPerformed(ActionEvent e){JMenuItem mi=(JMenuItem)e.getSource();String id=mi.getText();if(id.equals("新建")){text.setText("");file=null;}else if(id.equals("打开")){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("保存")){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("退出")){TextEditorFrame f=new TextEditorFrame();int s=JOptionPane.showConfirmDialog(f,"你真的要退出吗","退出程序",JOptionPane.YES_NO_CANCEL_OPTION);if(s==JOptionPane.YES_OPTION)System.exit(0);}else if(id.equals("剪切")){text.cut();}else if(id.equals("复制")){text.copy();}else if(id.equals("粘贴")){text.paste();}else if(id.equals("关于")){about.setSize(300,250);about.show();}}};void saveFile(){try{FileWriter fw=new FileWriter(file);fw.write(text.getText());fw.close();}catch(Exception e){e.printStackTrace();}}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();}}void initAboutDialog(){about.getContentPane().add(new JLabel("You have been making great progress."));about.setModal(true);}JToolBar toolbar=new JToolBar();//我来加上工具条 JButton [] buttons=new JButton[]{new JButton("", new ImageIcon("qin.jpg")),new JButton("", new ImageIcon("shu.jpg")),new JButton("", new ImageIcon("xin.jpg"))}; void initToolBar(){for(int i=0;i<buttons.length;i++)toolbar.add(buttons[i]);buttons[0].setToolTipText("复制");buttons[0].addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){text.copy();}});buttons[1].setToolTipText("剪切");buttons[1].addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){text.cut();}});buttons[2].setToolTipText("粘贴");buttons[2].addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){text.paste();} });this.getContentPane().add(toolbar,BorderLayout.NORTH);}}public class F{public static void main(String args[]){TextEditorFrame f=new TextEditorFrame();f.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){TextEditorFrame f=new TextEditorFrame();int s=JOptionPane.showConfirmDialog(f,"你真的要退出吗","退出程序",JOptionPane.YES_NO_OPTION);if(s==JOptionPane.YES_OPTION)System.exit(0);}});f.setTitle("TextEditor");f.setSize(800,600);f.show();}}

版权声明:本文为博主原创文章,未经博主允许不得转载。

,我们一路上兴致勃勃地参观,当夕阳西下时,才恋恋不舍地离开。

文本编辑框小程序

相关文章:

你感兴趣的文章:

标签云: