下载 >  开发技术 >  Java > Java记事本Java 记事本Java记事本
5

Java记事本Java 记事本Java记事本

Java记事本 本人QQ:764204930 邮箱:764204930@qq.com
2009-06-10 上传大小:19KB
分享
收藏 (1) 举报

评论 共1条

wmxqhwbafd 这个非常不错!包括颜色字体,查找粘贴复制及其右键响应!!!!
2013-05-08
回复
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 e) { closeFile(); } } ); // 菜单 - 剪切 menuCut.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { cut(); } } ); // 菜单 - 复制 menuCopy.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { copy(); } } ); // 菜单 - 粘贴 menuPaste.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { paste(); } } ); // 菜单 - 关于 menuAbout.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { // 显示对话框 JOptionPane.showOptionDialog(null, "程序名称:\n JNotePad \n" + "程序设计:\n \n" + "简介:\n 一个简单的文字编辑器\n" + " 可作为验收Java的实现对象\n" + " 欢迎网友下载研究交流\n\n" + " /", "关于JNotePad", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, null, null); } } ); // 编辑区键盘事件 textArea.addKeyListener( new KeyAdapter() { public void keyTyped(KeyEvent e) { processTextArea(); } } ); // 编辑区鼠标事件 textArea.addMouseListener( new MouseAdapter() { public void mouseReleased(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON3) popUpMenu.show(editMenu, e.getX(), e.getY()); } public void mouseClicked(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON1) popUpMenu.setVisible(false); } } ); } private void openFile() { if(isCurrentFileSaved()) { // 文件是否为保存状态 open(); // 打开 } else { // 显示对话框 int option = JOptionPane.showConfirmDialog( null, "文件已修改,是否保存?", "保存文件?", JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE, null); switch(option) { // 确认文件保存 case JOptionPane.YES_OPTION: saveFile(); // 保存文件 break; // 放弃文件保存 case JOptionPane.NO_OPTION: open(); break; } } } private boolean isCurrentFileSaved() { if(stateBar.getText().equals("未修改")) { return false; } else { return true; } } private void open() { // fileChooser 是 JFileChooser 的实例 // 显示文件选取的对话框 int option = fileChooser.showDialog(null, null); // 使用者按下确认键 if(option == JFileChooser.APPROVE_OPTION) { try { // 开启选取的文件 BufferedReader buf = new BufferedReader( new FileReader( fileChooser.getSelectedFile())); // 设定文件标题 setTitle(fileChooser.getSelectedFile().toString()); // 清除前一次文件 textArea.setText(""); // 设定状态栏 stateBar.setText("未修改"); // 取得系统相依的换行字符 String lineSeparator = System.getProperty("line.separator"); // 读取文件并附加至文字编辑区 String text; while((text = buf.readLine()) != null) { textArea.append(text); textArea.append(lineSeparator); } buf.close(); } catch(IOException e) { JOptionPane.showMessageDialog(null, e.toString(), "开启文件失败", JOptionPane.ERROR_MESSAGE); } } } private void saveFile() { // 从标题栏取得文件名称 File file = new File(getTitle()); // 若指定的文件不存在 if(!file.exists()) { // 执行另存为 saveFileAs(); } else { try { // 开启指定的文件 BufferedWriter buf = new BufferedWriter( new FileWriter(file)); // 将文字编辑区的文字写入文件 buf.write(textArea.getText()); buf.close(); // 设定状态栏为未修改 stateBar.setText("未修改"); } catch(IOException e) { JOptionPane.showMessageDialog(null, e.toString(), "写入文件失败", JOptionPane.ERROR_MESSAGE); } } } private void saveFileAs() { // 显示文件对话框 int option = fileChooser.showSaveDialog(null); // 如果确认选取文件 if(option == JFileChooser.APPROVE_OPTION) { // 取得选择的文件 File file = fileChooser.getSelectedFile(); // 在标题栏上设定文件名称 setTitle(file.toString()); try { // 建立文件 file.createNewFile(); // 进行文件保存 saveFile(); } catch(IOException e) { JOptionPane.showMessageDialog(null, e.toString(), "无法建立新文件", JOptionPane.ERROR_MESSAGE); } } } private void closeFile() { // 是否已保存文件 if(isCurrentFileSaved()) { // 释放窗口资源,而后关闭程序 dispose(); } else { int option = JOptionPane.showConfirmDialog( null, "文件已修改,是否保存?", "保存文件?", JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE, null); switch(option) { case JOptionPane.YES_OPTION: saveFile(); break; case JOptionPane.NO_OPTION: dispose(); } } } private void cut() { textArea.cut(); stateBar.setText("已修改"); popUpMenu.setVisible(false); } private void copy() { textArea.copy(); popUpMenu.setVisible(false); } private void paste() { textArea.paste(); stateBar.setText("已修改"); popUpMenu.setVisible(false); } private void processTextArea() { stateBar.setText("已修改"); } public static void main(String[] args) { new JNotePadUI(); } }

立即下载
java 记事本java 记事本

java 记事本java 记事本java 记事本java 记事本java 记事本java 记事本java 记事本java 记事本

立即下载
记事本打印和页面设置功能Java实现

开放之用,希望大家多多交流,互相促进,谢谢了!

立即下载
JAVA简单记事本程序设计实验报告(带源码)

JAVA简单记事本程序设计实验报告(带源码) 课题:学生成绩管理 4.功能要求: 编写一个简单记事本程序,要求包含以下菜单项 文件 新建、打开、保存、退出 编辑 剪切、拷贝、粘贴、查找 帮助 关于 5.实现文件和编辑菜单里的功能

立即下载
java记事本

java记事本java记事本java记事本java记事本java记事本

立即下载
java编写的记事本

java记事本 java记事本 java记事本 java记事本 java记事本

立即下载
java记事本 java 记事本

java记事本java记事本java记事本java记事本java记事本java记事本java记事本

立即下载
java 记事本 能够实现复制粘贴

java 记事本 能够实现复制粘贴java 记事本 能够实现复制粘贴java 记事本 能够实现复制粘贴java 记事本 能够实现复制粘贴java 记事本 能够实现复制粘贴

立即下载
Java开发记事本(完整版)

java基础开发的记事本,给大家借鉴一下

立即下载
Java开发的记事本(完整版源代码)

Java开发的记事本(完整版源代码) java基础开发的记事本,给大家借鉴一下

立即下载
java做的简易记事本含快捷键_查找_替换等

用java写的记事本,实现了记事本的文字编辑,快捷键,查找,替换等基本功能

立即下载
JAVA做得记事本,能够改变背景,字体,大小,颜色!

用JAVA做得记事本,能够改变背景,字体,大小,颜色!

立即下载
记事本(Java实现)

利用Java容器类ArrayList实现记事本,可增加、删除、获取记录、获取长度等功能

立即下载
java做的记事本

java做的记事本java做的记事本java做的记事本java做的记事本java做的记事本java做的记事本java做的记事本java做的记事本

立即下载
java写的记事本源代码

用java写windows记事本源代码,具体功能如下: 1.文件(F) 可以通过点击菜单或快捷键(alt + F)打开菜单页 1.1新建(N) 菜单内点击或助记符N或快捷键(ctrl + N) 点击后弹出对话框,询问是否保存到***.txt? 点击保存(S):保存文本并关闭,再新建新的文本 点击不保存(N):不保存文本并关闭,再新建新的文本 点击取消:取消新建操作 1.2打开(O) 菜单内点击或助记符O或快捷键(ctrl + O) 点击后弹出对话框,询问是否保存到***.txt? 点击保存(S):保存文本,弹出选择文件对话框 点击不保存(N):不保存文本,弹出选择文件对话框 ==》选择文件对话框: 选择打开(O):就打开新的文本 选择取消:取消打开操作,返回原文本 点击取消:取消打开操作 1.3保存(S) 菜单内点击或助记符S或快捷键(ctrl + S) 点击后保存文本内容 1.4另存为(A) 菜单内点击或助记符A 点击后打开另存为对话框,选择路径和设置文件名 选择保存(S):就会在该路径保存文本,原文本内容不会保存并关闭,打开另存的文本 取消:取消另存为操作,返回原文本 1.5页面设置(U)(只实现页面边距,其他未实现) 菜单内点击或助记符U 点击后打开页面设置对话框:可以设置一下内容 纸张:大小(Z)、来源(S) 方向:纵向(O)、横向(A) 页面边距(毫米):左(L)右(R)上(T)下(B) 页眉(H)、页脚(F)、预览:(图片) 选择确定:保存新的页面设置 选择取消:取消页面设置 1.6打印(P)(改功能未完全实现,使用可能会报错) 菜单内点击或助记符P或快捷键(ctrl + P) 点击后弹出打印对话框 1.7退出(X) 菜单内点击或助记符X 点击后退出本文本文件 2.编辑(E) 可以通过点击菜单或快捷键(alt + E)打开菜单页 2.1撤销(U) 菜单内点击或助记符U或快捷键(ctrl + Z) 响应后返回上一步操作 2.2剪切(T) 菜单内点击或助记符T或快捷键(ctrl + X) 响应后光标选中的内容提取到剪贴板,并删除该内容,光标定位在元初识位置 2.3复制(C) 菜单内点击或助记符C或快捷键(ctrl + C) 响应后光标选中内容提取到剪贴板,光标位置保持不变 2.4粘贴(P) 菜单内点击或助记符P或快捷键(ctrl + V) 响应后光标选中的内容被替换为剪贴板的内容,光标选中刚刚粘贴的内容 2.5删除(L) 菜单内点击或助记符L或快捷键(DEL) 响应后删除光标选中的内容 2.6查找(F) 菜单内点击或助记符F或快捷键(ctrl + F) 响应后弹出查找对话框:输入查找的内容,可以选择区分大小写和选择查找的方向 点击查找之后光标会选中响应的查找内容,没找到会弹出找不到对话框 2.7查找下一个(N) 菜单内点击或助记符N或快捷键(F3) 查找框有内容就直接查找贯标位置以后的内容,查找框没有内容直接弹出查找框 2.8替换(R) 菜单内点击或助记符R或快捷键(ctrl + H) 弹出替换对话框,有全部替换和替换当前两种 当前替换:替换光标选中的内容,光标移动到下一个查找内容上 2.9转到(G) 菜单内点击或助记符G或快捷键(ctrl + G) 在自动换行未选中的情况下,点击之后弹出转到指定行对话框 2.10全选(A) 菜单内点击或助记符A或快捷键(ctrl + A) 响应后选中全部文本内容 2.11时间/日期(D) 菜单内点击或助记符D或快捷键(F5) 在光标选中的内容里修改为当前时间 3.格式(O) 可以通过点击菜单或快捷键(alt + O)打开菜单页 3.1自动换行(W) 菜单内点击或助记符W 选中后,文本会自动换行,且不能点击查看状态栏和转到菜单 3.2字体(F) 菜单内点击或助记符F 弹出字体对话框:可以选择字体(F)、字形(Y)大小(S) 拥有示例和选择脚本,确定后更改全部字体 4.查看(V) 可以通过点击菜单或快捷键(alt + V)打开菜单页 4.1状态栏(S) 菜单内点击或助记符S 在底部会显示光标的起始坐标,第几行第几列 5.帮助(H) 可以通过点击菜单或快捷键(alt + H)打开菜单页 5.1查看帮助(H) 菜单内点击或助记符H 点击弹出帮助文本 5.2关于记事本(A)、 菜单内点击或助记符A 点击弹出关于记事本的对话框 显示它的版本信息

立即下载
JAVA记事本JAVA记事本

JAVA记事本JAVA记事本JAVA记事本JAVA记事本

立即下载
java 记事本程序 java 记事本程序

java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序 java 记事本程序

立即下载
JAVA编写的日历记事本 实现日历及记事本功能

这是一个用JAVA编译的记事本代码 实现万年历,记事本等功能

立即下载
java写的记事本程序带工具栏可以改变字体颜色

java写的记事本程序带工具栏可以改变字体颜色,neatbeans 6.5以上可以直接运行,附带实验报告以及源码。实现了打开,保存,退出,复制,粘贴,剪切,改变字体颜色等基本功能。

立即下载
JAVA课程设计:功能比较完善的记事本

JAVA课程设计 有源代码 功能比较完善的记事本,具体的功能要求有:基本的文本编辑功能:新建、打开和保存文件、复制和粘贴文本;改变文本字体大小,颜色;能够判断文本区中的文本是否被修改

立即下载
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

Java记事本Java 记事本Java记事本

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
您还未下载过该资源
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: