package javanotpad;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
public class MenuFrame extends JFrame implements ActionListener
{
private static final long serialVersionUID = 201269579650631599L;
private String filePath;
@SuppressWarnings("static-access")
public void initialize()
{
initMenuBar();
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setTitle("Java ");// 设置窗口标题
this.setSize(600, 700);// 设置窗口大小
this.setLocationRelativeTo(null);// 设置窗口位置
this.setVisible(true);// 设置窗口可见性
this.add(new TextArea());// 文本编辑区域
}
@SuppressWarnings("static-access")
public void initMenuBar()
{
JMenuBar menuBar = new JMenuBar();
final JFileChooser fileChoose = new JFileChooser();
FileFilter filter = new FileNameExtensionFilter("*.txt", "all file");
// fileChoose.addChoosableFileFilter(filter);
JMenu file, edit, view, search, document, tool, window, help;
JMenuItem fileItem1, fileItem2, fileItem3, fileItem4, fileItem5, editItem1, editItem2, editItem3, helpItem1;
file = new JMenu("文件(F)");// 文件菜单
edit = new JMenu("编辑(E)");// 编辑菜单
view = new JMenu("视图(V)");// 视图菜单
search = new JMenu("搜索(S)");// 上搜菜单
document = new JMenu("文档(D)");// 文档菜单
tool = new JMenu("工具(T)");// 工具菜单
window = new JMenu("窗口(W)");// 窗口菜单
help = new JMenu("帮助(H)");// 帮助菜单
// 文件菜单项
fileItem1 = new JMenuItem("新建");
fileItem2 = new JMenuItem("打开");
fileItem3 = new JMenuItem("保存");
fileItem4 = new JMenuItem("另存为");
fileItem5 = new JMenuItem("退出");
file.add(fileItem1);// 添加文件子菜单项,新建
file.add(fileItem2);// 添加文件子菜单项,打开
file.add(fileItem3);// 添加文件子菜单项,保存
file.add(fileItem4);// 添加文件子菜单项,另存为
file.add(fileItem5);// 添加文件子菜单项,退出
// 编辑菜单项
editItem1 = new JMenuItem("剪切");
editItem2 = new JMenuItem("粘贴");
editItem3 = new JMenuItem("复制");
edit.add(editItem1);// 添加编辑子菜单项,剪切
edit.add(editItem2);// 添加编辑子菜单项,粘贴
edit.add(editItem3);// 添加编辑子菜单项,复制
// 帮助菜单项
helpItem1 = new JMenuItem("关于");
help.add(helpItem1);// 添加帮助子菜单项,关于
helpItem1.addActionListener(this);// 添加关于按钮的事件
menuBar.add(file);// 添加文件菜单
menuBar.add(edit);// 添加编辑菜单
menuBar.add(view);// 添加视图菜单
menuBar.add(search);// 添加搜索菜单
menuBar.add(document);// 添加文档长度
menuBar.add(tool);// 添加工具菜单
menuBar.add(window);// 添加窗口
menuBar.add(help);// 添加帮助菜单
this.setJMenuBar(menuBar);// 添加菜单栏
fileChoose.setFileFilter(filter);// 设置打开文件的类型
fileItem2.addActionListener(new ActionListener()// 添加打开文件对话框事件
{
@Override
public void actionPerformed(ActionEvent e)
{
int returnVal = fileChoose
.showOpenDialog(MenuFrame.this);
if (returnVal == fileChoose.APPROVE_OPTION)
{
filePath = fileChoose.getSelectedFile()
.getAbsolutePath();
try
{
readFile(filePath);
} catch (FileNotFoundException e1)
{
e1.printStackTrace();
}
}
}
});
fileItem3.addActionListener(new ActionListener()// 添加保存文件对话框
{
@Override
public void actionPerformed(ActionEvent e)
{
int returnVal = fileChoose
.showSaveDialog(MenuFrame.this);
if (returnVal == fileChoose.APPROVE_OPTION)
{
filePath = fileChoose.getSelectedFile()
.getAbsolutePath();
try
{
writerFile(filePath);
} catch (IOException e1)
{
e1.printStackTrace();
}
} else
{
JOptionPane.showMessageDialog(null,"文件将默认保存在:/r/n"+filePath,
"提示",JOptionPane.INFORMATION_MESSAGE);
}
}
});
fileItem5.addActionListener(new ActionListener()// 添加退出程序事件
{
@Override
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
}
@Override
public void actionPerformed(ActionEvent e)// 关于菜单项信息
{
JOptionPane.showMessageDialog(null, "2009-5-4 11:01:29", "关于",
JOptionPane.INFORMATION_MESSAGE);
//JOptionPane.showInternalMessageDialog(null, "2009年5月5日17:22:47", "关于",
//JOptionPane.INFORMATION_MESSAGE);
}
void readFile(String path) throws FileNotFoundException// 显示打开文件的内容
{
File f = new File(path);
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
String s;
try
{
s = br.readLine();
while (s != null)
{
s += s;
System.out.println(s);
s = br.readLine();
}
} catch (IOException e)
{
e.printStackTrace();
} finally
{
try
{
if (br != null)
{
br.close();
}
} catch (IOException e)
{
e.printStackTrace();
}
try
{
if (fr != null)
{
fr.close();
}
} catch (IOException e)
{
e.printStackTrace();
}
}
}
void writerFile(String path) throws IOException// 保存文件内容
{
//File file = new File(path);
//FileWriter fw = new FileWriter(file);
//BufferedWriter bw = new BufferedWriter(fw);
}
}
分享到:
相关推荐
最近开发的时候做了textarea 高亮关键字,尝试过很多方法,比如用iframe,和编辑器替换,当然这也是一个方法,但是原来是用textbox的内容要达到兼容这两种方法是做不到的,所以这里是使用jquery插件和jquery核心文件搞的...
你可以在我的电脑中用鼠标右键单击你要加密的文件或文件夹,在弹出菜单中选择[超级加密]。也可以在软件的主窗口中选择加密数据,然后点击[数据加密]。 3、怎样完全解密加密的文件和文件夹? 在软件的主窗口中选择...
提取HTML文件中textarea的文本内容 提取HTML网页的显示文本内容 提取DOC/RTF等文件中全部文本内容 提取DOC/RTF等文件中全部文本内容(自动分析标题) 并可自定义正则表达式获取信息 支持从其它网站直接提取文本...
2、在textarea中定义一个id 3、调用js代码,你们第一个参数为你绑定的对应id,第二个参数为一个对象,为富文本的宽高度 例如: 1、[removed][removed] [removed][removed] [removed][removed] 2、<textarea ...
Java 打开文本文件显示在Frame上的textArea上,并添加菜单项,保存
textarea的value是html文件源代码,存成html文件的代码
批量提取HTML/DOC/RTF/TXT等文件中的文本信息。 支持从其它网站直接提取文本内容,...提取HTML文件中textarea的文本内容 提取HTML网页的显示文本内容 提取DOC/RTF等文件中全部文本内容 并可自定义正则表达式获取信息
我创建了这个chrome扩展名,用于复制文件可见内容和编辑器; 过滤命令/关键字并将纯文本粘贴到textarea(右侧区域)中。 该文本区域显示在pdf预览上。 诸如Grammarly之类的扩展程序无法检查诸如Overleaf之类的复杂...
安装只需将文件 TextareaCounter.module 和 TextareaCounter.js 放在站点模块目录中名为 TextareaCounter 的文件夹中。 按照习惯从后端安装。如何使用它要将其与特定的 Textarea 输入字段一起使用,请在后端编辑所需...
(此页是用ASP中的FSO来读取txt文本文件中的内容并输出,为ajax_txt.asp这个页面的AJAX异步获取提供数据) '//禁止缓存该页 让AJAX读取该页始终为最新而非过期缓存页 Response.Expires = 0 Response....
我创建了这个chrome扩展名,用于复制在编辑器中可见的文件内容; 过滤命令/关键字并将纯文本粘贴到textarea(右侧区域)中。 该文本区域显示在pdf预览上。 诸如Grammarly之类的扩展程序无法检查诸如Overleaf之类的...
问:从数据库中获取数据,然后通过initialsContent参数或者script、textarea等标签设置到编辑器之后,出现语法错误提示或者显示内容不完整,怎么办? 答:出现这个问题的原因一般是初始化的内容中存在特殊的标签...
演示-将通道记录器输出到JavaFX TextArea -语言:Java,JavaFX-记录器:logback,slf4j,log4j 运行应用程序时,用户可以使用按钮来记录事件,从而将记录器数据输出到GUI TextArea(JavaFX)。
7.2.6 统计编辑器中内容的字数 29 7.2.7 检查FCKeditor中的内容是否有改动 29 7.2.8 将FCKeditor中的内容是否有改动的值重新设置 29 8 外联编辑条(多个编辑域共用一个编辑条) 29 9 解释fck样式(CSS)的工作原理 30 10...
19.7 textarea显示记事本文件的内容 19.8 使用FSO读写文本文件 19.9 自动启动文件下载 19.10 创建Excel文件 19.11 JavaScript导出数据到Excel 19.12 JavaScript读取自身文件内的XML 19.13 将XML文件绑定到table ...
19.7 textarea显示记事本文件的内容 19.8 使用FSO读写文本文件 19.9 自动启动文件下载 19.10 创建Excel文件 19.11 JavaScript导出数据到Excel 19.12 JavaScript读取自身文件内的XML 19.13 将XML文件绑定到table ...
它还提供了一组简明的JavaScript事件,借助它们开发者可以方便的在文件上传过程中更新页面内容来营造各种动态效果。 在使用SWFUpload之前,请确认你具备一定的JavaScript和DOM知识。在实际开发中,大部分的错误都...
表单控件-Input控件 表单控件 ... 表单控件 ...input控件在页面中的显示宽度 readonly readonly 该控件内容为只读(不能编辑修改) disabled disabled 第一次加载页面时禁用该控件(显示为灰色) chec
// 显示对话框 JOptionPane.showOptionDialog(null, "程序名称:\n JNotePad \n" + "程序设计:\n \n" + "简介:\n 一个简单的文字编辑器\n" + " 可作为验收Java的实现对象\n" + " 欢迎网友下载研究交流\n\n...
TextArea 显示正在播放内容,显示已播放的内容; public BroadCastWord() { super("单词广播系统"); select=new Button("选择要广播的文件"); 开始广播=new Button("开始广播"); 开始广播.setEnabled(false); ...