1. 怎样用java编写一个记事本 ,具体步骤
import java.awt.BorderLayout;import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JColorChooser;import javax.swing.JDialog;import javax.swing.JFileChooser;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.JScrollPane;import javax.swing.JTextPane;import javax.swing.JToolBar;public 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("颜色") }, { 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() { // when here have not wrong: 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("color")) { color = JColorChooser.showDialog(TextEditorFrame.this, "", color); text.setForeground(color); } else if (id.equals("关于")) { about.setSize(200, 150); 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("作者-覃树新:记事本Q1.0版本")); about.setModal(true); about.setSize(200, 100); } 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 static void main(String args[]) { 。
2. 如何用java写一个简单的记事本
a.awt.event.*;
import javax.swing.JOptionPane;
/**
*功能:简单记事本
*2011-12-25
*/
public class SimpleNotepad implements ActionListener{
private Frame frame;
private FileDialog fd_load;
private FileDialog fd_save;
private TextArea ta;
private String file = "";
private MenuItem save;
private RandomAccessFile raf;
private FileChannel fci;
private FileLock flock;
3. 如何用JAVA编写简单的记事本程序
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.io.*; import java.awt.datatransfer.*; public class NewEdit { public static void main(String args[]) { MyFrame EditFrame=new MyFrame(); EditFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); EditFrame.setVisible(true); } } class MyFrame extends JFrame { public MyFrame() { Dimension screenSize=toolKit.getScreenSize(); int screenHeight=screenSize.height; int screenWidth=screenSize.width; setSize(screenWidth/2,screenHeight/2); setLocation(screenWidth/4,screenHeight/4); Image img=toolKit.getImage("icon.gif"); setIconImage(img); setTitle("MyEdit"); JMenuBar menuBar=new JMenuBar(); setJMenuBar(menuBar); JMenu fileMenu=new JMenu("文件"); JMenu editMenu=new JMenu("编辑"); JMenu helpMenu=new JMenu("帮助"); menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(helpMenu); JMenuItem newItem=new JMenuItem("新建"); newItem.addActionListener(new NewListener()); JMenuItem openItem=new JMenuItem("打开"); openItem.addActionListener(new OpenListener()); JMenuItem saveItem=new JMenuItem("保存"); saveItem.addActionListener(new SaveListener()); JMenuItem escItem=new JMenuItem("退出"); escItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent myE) { System.exit(0); } }); fileMenu.add(newItem); fileMenu.add(openItem); fileMenu.add(saveItem); fileMenu.add(escItem); JMenuItem allItem=new JMenuItem("全选"); //JMenuItem copyItem=new JMenuItem("复制"); //CopyAction copyAction=new CopyAction(); //copyItem.addActionListener(copyAction); JMenuItem cutItem=new JMenuItem("剪切"); //JMenuItem pasteItem=new JMenuItem("粘贴"); //Action pasteAction=new PasteAction(); //pasteItem.addActionListener(pasteAction); editMenu.add(allItem); allItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent myE) { textArea.selectAll(); } }); CopyAction copyAction=new CopyAction("剪切"); editMenu.add(copyAction); CutAction cutAction=new CutAction("复制"); editMenu.add(cutAction); Action pasteAction=new PasteAction("粘贴"); editMenu.add(pasteAction); popup=new JPopupMenu(); popup.add(copyAction); popup.add(pasteAction); popup.add(cutAction); textArea = new JTextArea(); textArea.add(popup); textArea.addMouseListener(new MouseListener(){ public void mouseClicked(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mousePressed(MouseEvent e) { if (e.getButton() == MouseEvent.BUTTON3) { popup.show(textArea, e.getX(), e.getY()); } } public void mouseReleased(MouseEvent e) {} });//可尝试用MouseAdapter,代码可能更简单 JScrollPane scroller = new JScrollPane(textArea); add(scroller); //OR--this.getContentPane().add(scroller) //scroller.setComponentPopupMenu(popup); //textArea.setInheritsPopupMenu(true); //scroller.addMouseListener(new MouseAdapter(){}); } public void writeFile(String fileName) { try { File file = new File(fileName); FileWriter write = new FileWriter(file); write.write(textArea.getText()); write.close(); } catch(Exception e){ System.out.println("Error closing file!"); } } public void openFile(String fileName) { try { File file = new File(fileName); FileReader readIn = new FileReader(file); int size = (int)file.length(); int charsRead = 0; char[] content = new char[size]; while(readIn.ready()) charsRead += readIn.read(content,charsRead,size-charsRead); readIn.close(); textArea.setText(new String(content,0,charsRead)); } catch(IOException e) { System.out.println("Error opening file!"); } } private class NewListener implements ActionListener { public void actionPerformed(ActionEvent myE) { textArea.setText(""); } } private class OpenListener implements ActionListener { public void actionPerformed(ActionEvent myE) { openFileDialog.setVisible(true); fileName = openFileDialog.getDirectory()+openFileDialog.getFile(); if(fileName != null) { openFile(fileName); } } } private class SaveListener implements ActionListener { public void actionPerformed(ActionEvent myE) { saveFileDialog.setVisible(true); fileName = saveFileDialog.getDirectory()+saveFileDialog.getFile(); if(fileName !=null) { writeFile(fileName); } } } private class CutAction extends AbstractAction { public CutAction(String name) { super(name); } public void actionPerformed(ActionEvent event) { String text = textArea.getSelectedText(); 。
4. 怎样用JAVA编写一个记事本程序
/***题目:记事本程序*Author: Jeason** 2004-12-20***/package jeason;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import java.io.*;import java.util.*;import java.text.*;public class Jsb{///boolean dirty=true;String filename="";String strtext="";///////////////////////////////////////////// Menu ///////////////////////////////////////JFrame frame=new JFrame("我的记事本");JPopupMenu pop=new JPopupMenu("弹出");JTextArea text=new JTextArea();JLabel statubar=new JLabel("状态栏");JMenuBar Mbar=new JMenuBar();JFileChooser jFileChooser1=new JFileChooser();JColorChooser jColor=new JColorChooser();JMenu jFile=new JMenu("文件");JMenu jEdit=new JMenu("编辑");JMenu jFormat=new JMenu("格式");JMenu jHelp=new JMenu("帮助");JMenuItem jnew=new JMenuItem("新建(N)");public Jsb(){ ///无参数的构造函数///this.dirty=false;/////final BorderLayout borderLayout1=new BorderLayout();frame.setSize(600,500);//frame.addWindowListener(new Jsb_frame_closingAdapter(this));JPanel panel=new JPanel();panel.setLayout(borderLayout1);//布局panel.add(new JScrollPane(text));//滚动条panel.add(statubar,borderLayout1.SOUTH);frame.getContentPane().add(panel);//frame.setJMenuBar(Mbar); //将主菜单添加到窗体中/** jnew**/ //jnewjnew.addActionListener(new File_new_actionAdapter(this));jnew.setMnemonic(´N´);//N上下划线jnew.setAccelerator(KeyStroke.getKeyStroke(´N´,java.awt.Event.CTRL_MASK,true));//快捷方式/* * jopen**/JMenuItem jopen=new JMenuItem("打开(O)");//jopenjopen.addActionListener(new File_open_actionAdapter(this));jopen.setMnemonic(´O´);jopen.setAccelerator(KeyStroke.getKeyStroke(´O´,java.awt.Event.CTRL_MASK,true));/** jsave**/JMenuItem jsave=new JMenuItem("保存(S)");jsave.addActionListener(new File_save_actionAdapter(this));jsave.setMnemonic(´S´);jsave.setAccelerator(KeyStroke.getKeyStroke(´S´,java.awt.Event.CTRL_MASK,true));/** jsave as**/JMenuItem jsaveas=new JMenuItem("另存为。
");jsaveas.addActionListener(new File_saveas_actionAdapter(this));/** jquite**/JMenuItem jquite=new JMenuItem("关闭(Q)");jquite.addActionListener(new File_quite_actionAdapter(this));jquite.setMnemonic(´Q´);jquite.setAccelerator(KeyStroke.getKeyStroke(´Q´,java.awt.Event.CTRL_MASK,true));//------------------------------------// jFile code of end//--------------------------------------/*** jEdit code*///jundoJMenuItem jundo=new JMenuItem("撤销(U)");jundo.addActionListener(new Edit_undo_actionAdapter(this));jundo.setMnemonic(´U´);jundo.setAccelerator(KeyStroke.getKeyStroke(´U´,java.awt.Event.CTRL_MASK,true));/** jcut**/JMenuItem jcut=new JMenuItem("剪切(X)");jcut.addActionListener(new Edit_cut_actionAdapter(this));jcut.setMnemonic(´X´);jcut.setAccelerator(KeyStroke.getKeyStroke(´X´,java.awt.Event.CTRL_MASK,true));/** jcopy**/JMenuItem jcopy=new JMenuItem("复制(C)");jcopy.addActionListener(new Edit_copy_actionAdapter(this));jcopy.setMnemonic(´C´);jcopy.setAccelerator(KeyStroke.getKeyStroke(´C´,java.awt.Event.CTRL_MASK,true));/** jpaste**/JMenuItem jpaste=new JMenuItem("粘贴(V)");jpaste.addActionListener(new Edit_paste_actionAdapter(this));jpaste.setMnemonic(´V´);jpaste.setAccelerator(KeyStroke.getKeyStroke(´V´,java.awt.Event.CTRL_MASK,true));/** jdelete**/ JMenuItem jdelete=new JMenuItem("删除(D)");jdelete.addActionListener(new Edit_delete_actionAdapter(this));jdelete.setMnemonic(´D´);jdelete.setAccelerator(KeyStroke.getKeyStroke(´D´,java.awt.Event.CTRL_MASK,true));/** jfind**/ JMenuItem jfind=new JMenuItem("查找(F)");jfind.addActionListener(new Edit_find_actionAdapter(this));jfind.setMnemonic(´F´);jfind.setAccelerator(KeyStroke.getKeyStroke(´F´,java.awt.Event.CTRL_MASK,true));/** jreplace**/JMenuItem jreplace=new JMenuItem("替换(R)");jreplace.addActionListener(new Edit_replace_actionAdapter(this));jreplace.setMnemonic(´R´);jreplace.setAccelerator(KeyStroke.getKeyStroke(´R´,java.awt.Event.CTRL_MASK,true));/**jselectall**/JMenuItem jselectall=new JMenuItem("全选(A)");jselectall.addActionListener(new Edit_selectall_actionAdapter(this));jselectall.setMnemonic(´A´);jselectall.setAccelerator(KeyStroke.getKeyStroke(´A´,java.awt.Event.CTRL_MASK,true));/** jdate**/JMenuItem jdate=new JMenuItem("日期/时间(T)");jdate.addActionListener(new Edit_timedate_actionAdapter(。
5. java代码怎么用记事本写
下载JDK后,总点下一步让他默认安装。
安装的结果在C:\Program Files\Java下面。
然后就设环境变量:(方法如下)
1.在桌面上右击"我的电脑"图标,选择"属性"
再选"高级",再点"环境变量"
2.在系统变量中双击path(不分大小写,如果找不到path则点新建,新建变量path),在变量值的最后面添加: ;C:\Program Files\Java\jdk1.5.0_01\bin (前面的小分号不能省哦)
3.再在系统变量中新建变量名:classpath
在值的最后面加上: ;C:\Program Files\Java\jdk1.5.0_01\lib\tools.jar
4.再在系统变量中新建变量名: java_home
在值的最后面加上: ;C:\Program Files\Java
你再去桌面,点击“开始”“运行”
输入cmd 回车,(为了简单你把你的java文件复制到 e盘根目录下好吧。)在黑色屏幕中输入e:
再回车,再输入: javac 文件名.java 如果没错误,再输入: java 文件名 就运行了
6. JAVA记事本程序怎么写
这是一个我以前写的简单的记事本,里面有新建,保存,另存,打开等功能,但是只是逻辑最简单的那种,你看看吧,希望对你有帮助;import java.awt.FileDialog;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import java.io.FileOutputStream;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTextArea;public class NotePad { public static void main(String[] args) { NotePadFrame notPadFrame = new NotePadFrame(); notPadFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); notPadFrame.setVisible(true); }}class NotePadFrame extends JFrame { private JMenu jmb, jmb1; private JMenuBar Jmenu = new JMenuBar(); private JMenuItem fm, fm1, fm2, fm3, fm4, fe1, fe2, fe3, fe4; String fileName, copy, paste, cut; NotePadPanel notePadPanel = new NotePadPanel(this); private NotePadFrame f; public NotePadFrame() { jmb = new JMenu("文件"); this.setJMenuBar(Jmenu); fm = new JMenuItem("新建"); jmb.add(fm); jmb.addSeparator(); // 新建 fm.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { if (e.getSource() == fm) { if (!(notePadPanel.getTa().getText()).equals("")) { Object[] options = ; int response = JOptionPane.showOptionDialog(null, "你是否保存", "提示", JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]); if (response == 0) { FileDialog d = new FileDialog(f, "保存文件", FileDialog.SAVE); d.setVisible(true); fileName = d.getDirectory() + d.getFile(); FileOutputStream fout = new FileOutputStream( fileName + ".txt"); byte[] bb = notePadPanel.getTa().getText() .getBytes(); fout.write(bb); // 关闭 fout.close(); JOptionPane.showMessageDialog(null, "已保存"); notePadPanel.getTa().setText(""); } if (response == 1) { JOptionPane.showMessageDialog(null, "你选择了取消"); notePadPanel.getTa().setText(""); } } } } catch (Exception e2) { System.out.println(e2.getMessage()); } } }); fm1 = new JMenuItem("打开"); jmb.add(fm1); jmb.addSeparator(); // 打开文件 fm1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { if (e.getSource() == fm1) { FileDialog d = new FileDialog(f, "打开文件", FileDialog.LOAD); d.setVisible(true); File file = new File(d.getDirectory() + d.getFile()); for (int i = 0; i <= file.length(); i++) { char[] ch = new char[1024]; FileReader fr = new FileReader(file); fr.read(ch); String str = new String(ch); notePadPanel.getTa().setText(str); } } } catch (IOException e3) { System.out.println(e3.getMessage()); } } }); fm2 = new JMenuItem("保存"); jmb.add(fm2); jmb.addSeparator(); // 保存文件 fm2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { if (e.getSource() == fm2) { if (fileName == null) { fileName = JOptionPane.showInputDialog("请输入文件名", "java"); FileOutputStream fout = new FileOutputStream( fileName + ".txt"); byte[] bb = notePadPanel.getTa().getText() .getBytes(); fout.write(bb); // 关闭 fout.close(); JOptionPane.showMessageDialog(null, "已保存"); } else { FileOutputStream fout = new FileOutputStream( fileName + ".txt"); byte[] bb = notePadPanel.getTa().getText() .getBytes(); fout.write(bb); // 关闭 fout.close(); JOptionPane.showMessageDialog(null, "已保存"); } } } catch (IOException e1) { System.out.println(e1.getMessage()); } } }); fm3 = new JMenuItem("另存为"); jmb.add(fm3); jmb.addSeparator(); // 另存为 fm3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (e.getSource() == fm3) { try { FileDialog d = new FileDialog(f, "另存为", FileDialog.SAVE); d.setVisible(true); fileName = d.getDirectory() + d.getFile(); FileOutputStream fout = new FileOutputStream(fileName + ".txt"); byte[] bb = notePadPanel.getTa().getText().getBytes(); fout.write(bb); // 关闭 fout.close(); } catch (Exception e4) { System.out.println(e4.getMessage()); } } } }); fm4 = new JMenuItem("关闭"); jmb.add(fm4); fm4.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (e.getSource() == fm4) { System.exit(0); } } }); jmb1 = new JMenu("编辑"); fe1 = new JMenuItem("复制"); jmb1.add(fe1); jmb1.addSeparator(); fe1.addActionListener(new ActionListener() { public void actionPerformed(。
7. 如何用JAVA编写“记事本”程序
import java.io.*;import java.util.Calendar;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class NoteBook extends JFrame implements ActionListener,ItemListener,WindowListener,MouseListener{ Container c = this.getContentPane(); JMenuBar jmb = new JMenuBar(); JColorChooser jcc = new JColorChooser(); JMenu jm1 = new JMenu("文件(F)"); JMenu jm2 = new JMenu("编辑(E)"); JMenu jm3 = new JMenu("格式(O)"); JMenu jm4 = new JMenu("查看(V)"); JMenu jm5 = new JMenu("帮助(H)"); JMenuItem jmi1 = new JMenuItem("新建(N)"); JMenuItem jmi2 = new JMenuItem("打开(O)"); JMenuItem jmi3 = new JMenuItem("保存(S)"); JMenuItem jmi4 = new JMenuItem("退出(X)"); JMenuItem jmi5 = new JMenuItem("撤消(U)"); JMenuItem jmi6 = new JMenuItem("复制(C)"); JMenuItem jmi7 = new JMenuItem("粘贴(P)"); JMenuItem jmi8 = new JMenuItem("剪切(T)"); JMenuItem jmi12 = new JMenuItem("日期和时间"); JMenuItem jmi9 = new JMenuItem("字体(E)"); JCheckBoxMenuItem jcbmi = new JCheckBoxMenuItem("自动换行(W)"); JMenuItem jmi10 = new JMenuItem("删除(S)"); JMenuItem jmi11 = new JMenuItem("背景颜色(H)"); JTextArea jta = new JTextArea(15,15); JScrollPane jsp = new JScrollPane(jta); //PupolMenu pm = new Pupolmenu(); NoteBook(){ this.addWindowListener(this); c.setLayout(new BorderLayout()); c.add(jmb,BorderLayout.NORTH); this.setTitle("新建 文本文档"); jmb.add(jm1); jm1.setMnemonic('f'); jm1.addActionListener(this); jmb.add(jm2); jm2.setMnemonic('e'); jmb.add(jm3); jm3.setMnemonic('o'); jmb.add(jm4); jm4.setMnemonic('v'); jmb.add(jm5); jm5.setMnemonic('h'); jm1.add(jmi1); jmi1.addActionListener(this); jmi1.setAccelerator(KeyStroke.getKeyStroke('N',Event.CTRL_MASK,false)); jm1.addSeparator(); jm1.add(jmi2); jmi2.setAccelerator(KeyStroke.getKeyStroke('O',Event.CTRL_MASK,false)); jmi2.addActionListener(this); jm1.addSeparator(); jm1.add(jmi3); jmi3.setAccelerator(KeyStroke.getKeyStroke('S',Event.CTRL_MASK,false)); jmi3.addActionListener(this); jm1.addSeparator(); jm1.add(jmi4); jmi1.setMnemonic('n'); jmi2.setMnemonic('o'); jmi3.setMnemonic('s'); jmi4.setMnemonic('x'); jmi4.addActionListener(this); jm2.add(jmi5); jm2.addSeparator(); jm2.add(jmi6); jm2.addSeparator(); jm2.add(jmi7); jm2.addSeparator(); jm2.add(jmi8); jm2.add(jmi12); jmi12.addActionListener(this); jm3.add(jcbmi); jcbmi.addItemListener(this); jm3.addSeparator(); jm3.add(jmi9); jm4.add(jmi10); jmi10.addActionListener(this); jm5.add(jmi11); jmi11.addActionListener(this); c.add(jsp); this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.setSize(500,500); this.setVisible(true); } public void actionPerformed(ActionEvent e){ if(e.getSource()==jmi1){ jta.setText(""); this.setTitle("无标题 - 记事本"); } if(e.getSource()==jmi2){ File f1; JFileChooser jfc1 = new JFileChooser(); int num1 = jfc1.showOpenDialog(this); if(num1==JFileChooser.APPROVE_OPTION){ try{ f1 = jfc1.getSelectedFile(); this.setTitle(f1.getName()); FileReader fr = new FileReader(f1); BufferedReader br = new BufferedReader(fr); String str; while((str = br.readLine())!=null){ jta.setText(str); } fr.close(); br.close(); }catch(FileNotFoundException e1){ e1.printStackTrace(); }catch(IOException e2){ e2.printStackTrace(); } } } if(e.getSource()==jmi3){ File f2 = null; JFileChooser jfc2 = new JFileChooser(); int num2 = jfc2.showSaveDialog(this); if(num2==JFileChooser.APPROVE_OPTION){ f2=jfc2.getSelectedFile(); this.setTitle(f2.getName()); try{ FileWriter fw = new FileWriter(f2); BufferedWriter bw = new BufferedWriter(fw); bw.write(jta.getText()); bw.close(); fw.close(); }catch(IOException e2){ e2.printStackTrace(); } } } if(e.getSource()==jmi4){ int a = JOptionPane.showConfirmDialog(this,"文件已被改变,是否要保存?","提示",JOptionPane.YES_NO_CANCEL_OPTION); if(a==1){ this.dispose(); }else if(a==0){ File f2 = null; JFileChooser jfc2 = new JFileChooser(); int num2 = jfc2.showSaveDialog(this); if(num2==JFileChooser.APPROVE_OPTION){ f2=jfc2.getSelectedFile(); this.setTitle(f2.getName()); try{ FileWriter fw = new FileWriter(f2); BufferedWriter bw = new BufferedWriter(fw); bw.write(jta.getText()); bw.close(); fw.close(); }catch(IOException e2){ e2.printStackTrace(); } this.dispose(); } } } if(e.getSource()==jmi12){ Calendar c1 =Calendar.getInstance(); int y = c1.get(Calendar.YEAR); int m = c1.get(Calendar.MONTH); int d = c1.get(Calendar.DATE); int h = c1.get(Calendar.HOUR); int m1 = c1.get(Calendar.MINUTE); int m2 = m+1; jta.setText(y+"年"+m2+"月"+d+"日"+h+":"+m1); } if(e.getS。
8. 用JAVA编写记事本
import java.awt.BorderLayout;import java.awt.Container;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.InputEvent;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import javax.swing.BorderFactory;import javax.swing.JFileChooser;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.JPopupMenu;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.KeyStroke;import javax.swing.ScrollPaneConstants;import javax.swing.SwingConstants;public class JNotePadUI extends JFrame { private JMenuItem menuOpen; private JMenuItem menuSave; private JMenuItem menuSaveAs; private JMenuItem menuClose; private JMenu editMenu; private JMenuItem menuCut; private JMenuItem menuCopy; private JMenuItem menuPaste; private JMenuItem menuAbout; private JTextArea textArea; private JLabel stateBar; private JFileChooser fileChooser; private JPopupMenu popUpMenu; public JNotePadUI() { super("新建文本文件"); setUpUIComponent(); setUpEventListener(); setVisible(true); } private void setUpUIComponent() { setSize(640, 480); // 菜单栏 JMenuBar menuBar = new JMenuBar(); // 设置「文件」菜单 JMenu fileMenu = new JMenu("文件"); menuOpen = new JMenuItem("打开"); // 快捷键设置 menuOpen.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_O, InputEvent.CTRL_MASK)); menuSave = new JMenuItem("保存"); menuSave.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_S, InputEvent.CTRL_MASK)); menuSaveAs = new JMenuItem("另存为"); menuClose = new JMenuItem("关闭"); menuClose.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_Q, InputEvent.CTRL_MASK)); fileMenu.add(menuOpen); fileMenu.addSeparator(); // 分隔线 fileMenu.add(menuSave); fileMenu.add(menuSaveAs); fileMenu.addSeparator(); // 分隔线 fileMenu.add(menuClose); // 设置「编辑」菜单 JMenu editMenu = new JMenu("编辑"); menuCut = new JMenuItem("剪切"); menuCut.setAccelerator( KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_MASK)); menuCopy = new JMenuItem("复制"); menuCopy.setAccelerator( KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK)); menuPaste = new JMenuItem("粘贴"); menuPaste.setAccelerator( KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK)); editMenu.add(menuCut); editMenu.add(menuCopy); editMenu.add(menuPaste); // 设置「关于」菜单 JMenu aboutMenu = new JMenu("关于"); menuAbout = new JMenuItem("关于JNotePad"); aboutMenu.add(menuAbout); menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(aboutMenu);setJMenuBar(menuBar); // 文字编辑区域 textArea = new JTextArea(); textArea.setFont(new Font("宋体", Font.PLAIN, 16)); textArea.setLineWrap(true); JScrollPane panel = new JScrollPane(textArea, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); Container contentPane = getContentPane(); contentPane.add(panel, BorderLayout.CENTER); // 状态栏 stateBar = new JLabel("未修改"); stateBar.setHorizontalAlignment(SwingConstants.LEFT); stateBar.setBorder( BorderFactory.createEtchedBorder()); contentPane.add(stateBar, BorderLayout.SOUTH); popUpMenu = editMenu.getPopupMenu(); fileChooser = new JFileChooser(); }private void setUpEventListener() { // 按下窗口关闭钮事件处理 addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) { closeFile(); } } ); // 菜单 - 打开 menuOpen.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { openFile(); } } ); // 菜单 - 保存 menuSave.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { saveFile(); } } ); // 菜单 - 另存为 menuSaveAs.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { saveFileAs(); } } );// 菜单 - 关闭文件 menuClose.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent 。
转载请注明出处育才学习网 » 怎么用Java写记事本