日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java实现简单的文本编辑器

發布時間:2023/12/14 java 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java实现简单的文本编辑器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、首先創建一個編輯器EditorDemo類,繼承JFrame類,具體實現編碼如下:

2、創建菜單欄,新增各個菜單項,比如文件、編輯、幫助等功能,新增createJMenuBar方法如下:

/*** 創建菜單欄* @param actions* @return*/private JMenuBar createJMenuBar(Action[] actions) {JMenuBar menubar = new JMenuBar(); //實例化菜單欄JMenu menuFile = new JMenu("文件"); //實例化菜單JMenu menuEdit = new JMenu("編輯");JMenu menuAbout = new JMenu("幫助");menuFile.add(new JMenuItem(actions[0])); //增加新菜單項menuFile.add(new JMenuItem(actions[1]));menuFile.add(new JMenuItem(actions[2]));menuFile.add(new JMenuItem(actions[7]));menuEdit.add(new JMenuItem(actions[3]));menuEdit.add(new JMenuItem(actions[4]));menuEdit.add(new JMenuItem(actions[5]));menuAbout.add(new JMenuItem(actions[6]));menubar.add(menuFile); //增加菜單menubar.add(menuEdit);menubar.add(menuAbout);return menubar; //返回菜單欄}

3、創建工具條,比如:新建、打開、剪切、保存、拷貝等功能,新增createJToolBar方法

/**
* 創建工具條
* @param actions
* @return
*/
private JToolBar createJToolBar(Action[] actions) {
JToolBar toolBar = new JToolBar(); //實例化工具條
for (int i = 0; i < actions.length; i++) {
JButton bt = new JButton(actions[i]); //實例化新的按鈕
bt.setRequestFocusEnabled(false); //設置不需要焦點
toolBar.add(bt); //增加按鈕到工具欄
}
return toolBar; //返回工具欄
}
4、具體操作功能實現,包括:新建文件命令、打開文件命令、保存命令、退出命令、剪切命令、拷貝命令、粘貼命令、關于選項命令,具體實現上述功能類編碼如下:

/*** 新建文件命令*/public class NewAction extends AbstractAction {public NewAction() {super("新建");}public void actionPerformed(ActionEvent e) {textPane.setDocument(new DefaultStyledDocument()); //清空文檔}}/*** 打開文件命令*/public class OpenAction extends AbstractAction {public OpenAction() {super("打開");}public void actionPerformed(ActionEvent e) {int i = filechooser.showOpenDialog(EditorDemo.this); //顯示打開文件對話框if (i == JFileChooser.APPROVE_OPTION) { //點擊對話框中打開選項File f = filechooser.getSelectedFile(); //得到選擇的文件try {InputStream is = new FileInputStream(f); //得到文件輸入流textPane.read(is, "d"); //讀入文件到文本窗格} catch (Exception ex) {ex.printStackTrace(); //輸出出錯信息}}}}/*** 保存命令*/public class SaveAction extends AbstractAction {public SaveAction() {super("保存");}public void actionPerformed(ActionEvent e) {int i = filechooser.showSaveDialog(EditorDemo.this); //顯示保存文件對話框if (i == JFileChooser.APPROVE_OPTION) { //點擊對話框中保存按鈕File f = filechooser.getSelectedFile(); //得到選擇的文件try {FileOutputStream out = new FileOutputStream(f); //得到文件輸出流out.write(textPane.getText().getBytes()); //寫出文件} catch (Exception ex) {ex.printStackTrace(); //輸出出錯信息}}}}/*** 退出命令*/public class ExitAction extends AbstractAction {public ExitAction() {super("退出");}public void actionPerformed(ActionEvent e) {System.exit(0); //退出程序}}/*** 剪切命令*/public class CutAction extends AbstractAction {public CutAction() {super("剪切");}public void actionPerformed(ActionEvent e) {textPane.cut(); //調用文本窗格的剪切命令}}/*** 拷貝命令*/public class CopyAction extends AbstractAction {public CopyAction() {super("拷貝");}public void actionPerformed(ActionEvent e) {textPane.copy(); //調用文本窗格的拷貝命令}}/*** 粘貼命令*/public class PasteAction extends AbstractAction {public PasteAction() {super("粘貼");}public void actionPerformed(ActionEvent e) {//調用文本窗格的粘貼命令textPane.paste();}}/*** 關于選項命令*/public class AboutAction extends AbstractAction {public AboutAction() {super("關于");}public void actionPerformed(ActionEvent e) {JOptionPane.showMessageDialog(EditorDemo.this, "簡單的文本編輯器演示"); //顯示軟件信息}}

5、最后寫一個main方法調用EditorDemo類,啟動文本剪輯器

/*** 啟動程序的main方法* @param args*/public static void main(String[] args) {new EditorDemo();}

啟動成功,可以盡情的碼字了

參考文章:http://www.ysxbohui.com/article/23

總結

以上是生活随笔為你收集整理的Java实现简单的文本编辑器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。