




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用JAVA编写的一个简单记事本程序用JAVA编写的一个简单记事本程序2010-12-30 14:27/-Notepad-import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import .*;import java.util.*;import java.io.*;public class Notepad extends JFrame implements ActionListenerFile file=null;Color color=Color.black;JTextPane text=new JTextPane();/the text area JDialog about=new JDialog(this);/the dialog ofAboutJFileChooser filechooser=new JFileChooser();/file choose GraphicsEnvironment getFont=GraphicsEnvironment.getLocalGraphicsEnvironment();Font fonts=getFont.getAllFonts();JColorChooser colorchooser=new JColorChooser();/Menu item for carte/forFileprivate JMenuItem jminew,jmiopen,jmisave,jmisaveas;/forEditprivate JMenuItem jmicut,jmicopy,jmiplaster,jmiall;/forFormatprivate JMenuItem jmifont,jmicolor;/forToolprivate JMenuItem jminotepad,jmicalculator;/forHelpprivate JMenuItem jmiabout;/forExitprivate JMenuItem jmiexit;/-/-public static void main(String args)Notepad frame=new Notepad();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();/pack():set the size of frame automatic frame.setVisible(true);/Default Constructor public Notepad()setTitle(Notepad);setLocation(100,50);/create menu bar JMenuBar jmb=new JMenuBar();/set menu bar to the frame setJMenuBar(jmb);/add menuFileto menu bar JMenu filemenu=new JMenu(File);filemenu.setMnemonic(F);/set hotkey jmb.add(filemenu);/add menuEditto menu bar JMenu editmenu=new JMenu(Edit);editmenu.setMnemonic(E);/set hotkey jmb.add(editmenu);/add menuFormatto menu bar JMenu formatmenu=new JMenu(Format);formatmenu.setMnemonic(T);/set hotkey jmb.add(formatmenu);/add menuToolto menu bar JMenu toolmenu=new JMenu(Tool);toolmenu.setMnemonic(L);jmb.add(toolmenu);/add menuHelpto menu bar JMenu helpmenu=new JMenu(Help);helpmenu.setMnemonic(H);/set hotkey jmb.add(helpmenu);/add menuExitto menu bar JMenu exitmenu=new JMenu(Exit);exitmenu.setMnemonic(X);jmb.add(exitmenu);/add menu item with mnemonics to menuFilefilemenu.add(jminew=new JMenuItem(New,N);jminew.setIcon(new ImageIcon(images/Handle.gif);filemenu.add(jmiopen=new JMenuItem(Open,O);jmiopen.setIcon(new ImageIcon(images/folderOpen.gif);filemenu.add(jmisave=new JMenuItem(Save,S);jmisave.setIcon(new ImageIcon(images/3.gif);filemenu.addSeparator();filemenu.add(jmisaveas=new JMenuItem(Save as);jmisaveas.setIcon(new ImageIcon(images/7.gif);/set keyboard accelerators jminew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK);jmiopen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK);jmisave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK);/add menu item with mnemonics to menuEditeditmenu.add(jmicut=new JMenuItem(Cut,X);jmicut.setIcon(new ImageIcon(images/face1.gif);editmenu.add(jmicopy=new JMenuItem(Copy,C);jmicopy.setIcon(new ImageIcon(images/face2.gif);editmenu.add(jmiplaster=new JMenuItem(Plaster,V);jmiplaster.setIcon(new ImageIcon(images/face3.gif);editmenu.addSeparator();editmenu.add(jmiall=new JMenuItem(All);jmiall.setIcon(new ImageIcon(images/face4.gif);/set keyboard accelerators jmicut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,ActionEvent.CTRL_MASK);jmicopy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,ActionEvent.CTRL_MASK);jmiplaster.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,ActionEvent.CTRL_MASK);jmiall.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,ActionEvent.CTRL_MASK);/add menu item with mnemonics to menuFormatformatmenu.add(jmifont=new JMenuItem(Font);jmifont.setIcon(new ImageIcon(images/face12.gif);formatmenu.addSeparator();formatmenu.add(jmicolor=new JMenuItem(Color);jmicolor.setIcon(new ImageIcon(images/face13.gif);/add menu item with mnemonics to menuFormattoolmenu.add(jminotepad=new JMenuItem(MS Notepad);jminotepad.setIcon(new ImageIcon(images/face5.gif);toolmenu.addSeparator();toolmenu.add(jmicalculator=new JMenuItem(MS Calculator);jmicalculator.setIcon(new ImageIcon(images/face11.gif);/add menu item with mnemonics to menuHelphelpmenu.add(jmiabout=new JMenuItem(About);jmiabout.setIcon(new ImageIcon(images/face10.gif);/add menu item with mnemonics to menuExitexitmenu.add(jmiexit=new JMenuItem(Exit);jmiexit.setIcon(new ImageIcon(images/face6.gif);/add textpane to notepad/textpane initialize setFont(new Font(Times New Roman,Font.PLAIN,12);JScrollPane scrollpane=new JScrollPane(text);scrollpane.setPreferredSize(new Dimension(600,500);getContentPane().add(scrollpane);/set the name of control,set the listener jminew.addActionListener(this);jmiopen.addActionListener(this);jmisave.addActionListener(this);jmisaveas.addActionListener(this);jmicut.addActionListener(this);jmicopy.addActionListener(this);jmiplaster.addActionListener(this);jmiall.addActionListener(this);jmifont.addActionListener(this);jmicolor.addActionListener(this);jminotepad.addActionListener(this);jmicalculator.addActionListener(this);jmiabout.addActionListener(this);jmiexit.addActionListener(this);/affair dispose public void actionPerformed(ActionEvent e)/JMenuItem mi=(JMenuItem)e.getSource();String name=e.getActionCommand();/the methodological of jminew if(e.getSource()instanceof JMenuItem)/new if(New.equals(name)text.setText();file=null;/open if(Open.equals(name)if(file!=null)filechooser.setSelectedFile(file);int returnVal=filechooser.showOpenDialog(Notepad.this);if(returnVal=JFileChooser.APPROVE_OPTION)file=filechooser.getSelectedFile();/the operation foropentryFileReader fr=new FileReader(file);int len=(int)file.length();char buffer=new charlen;fr.read(buffer,0,len);fr.close();text.setText(new String(buffer);catch(Exception e_open)e_open.printStackTrace();/save if(Save.equals(name)if(file!=null)filechooser.setSelectedFile(file);int returnVal=filechooser.showSaveDialog(Notepad.this);if(returnVal=JFileChooser.APPROVE_OPTION)file=filechooser.getSelectedFile();tryFileWriter fw=new FileWriter(file);fw.write(text.getText();fw.close();catch(Exception e_save)e_save.printStackTrace();/cut if(Cut.equals(name)text.cut();/copy if(Copy.equals(name)text.copy();/plaster if(Plaster.equals(name)text.paste();/All if(All.equals(name)text.selectAll();/font if(Font.equals(name)/color if(Color.equals(name)color=JColorChooser.showDialog(Notepad.this,color);text.setForeground(color);/ms notepad if(MS Notepad.equals(name)tryString command=notepad.exe;Process child=Runtime.getRuntime().exec(command);catch(IOException ex)/ms calculator if(MS Calculator.equals(name)tryString command=calc.exe;Process child=Runtime.getRuntime().exec(command);catch(IOException e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国无创医疗传感器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国新型建筑产业园区行业市场现状分析及竞争格局与投资发展研究报告
- 2025-2030年中国整体陶瓷陶瓷基复合材料行业市场现状供需分析及投资评估规划分析研究报告
- 启发思维的卫生资格考试试题及答案
- 执业护士考试资源整合分享
- 执业药师考试基础知识试题及答案
- 神经病学2025年执业医师考试试题及答案
- 2025黑龙江省建工集团招聘17人笔试参考题库附带答案详解
- 终止员工持股协议书
- 2025年贵州省事业单位公开招聘工作人员笔试历年典型考题及考点剖析附带答案详解
- 四川省攀枝花市2025届高三第三次统一考试地理试题及答案
- 美发店入职合同保密协议
- 辽宁省点石联考2025届高三下学期5月联合考试 地理 含答案
- 2025-2030年中国肿瘤医院行业市场发展现状分析及未来趋势预测研究报告
- 2024年中南大学专职辅导员招聘笔试真题
- 2025-2030中国财务公司行业深度分析及发展前景与发展战略研究报告
- 2025年人教版小学五年级下册奥林匹克数学竞赛测试题(附参考答案)
- 不分手协议书合同书
- 室内空间设计方案汇报
- 新生儿败血症诊断与治疗专家共识(2024)解读课件
- 调饮技术大赛考试题库400题(含答案)
评论
0/150
提交评论