java文本编辑器用java编写一个体现菜单功能的文本编辑器。

java文本编辑器  时间:2021-09-15  阅读:()

JAVA什么可以编辑文本和图片

Java Swing里面有富文本编辑器 JTextPane,不过用法比JTextArea复杂多了, 能够插入图片,设置字体属性之类了。

至于要插入Flash的话,单独的一个组件是可以做到的,建议去网上搜索一下JDIC,是Sun针对Windows开发的一个组件包,其中包括一个Web Browser,是一个组件,设置他的html内容就能显示出来,是使用IE内核的。

将flash嵌入网页的代码使用,具体的语法自己查下吧。

文本编辑器(手机)Java

自己写的,能实现基本功能: import java.awt.BorderLayout; import java.awt.FileDialog; import java.awt.Font; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.StringSelection; import java.awt.datatransfer.Transferable; import java.awt.datatransfer.UnsupportedFlavorException; 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.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; import javax.swing.border.TitledBorder; /*因为根据个人的电脑路径可能有所偏差,没有源路径的情况下,设置默认保存路径为D盘根目录下 * 若要选择保存其他地方,可以选择 另存为*/ public class TestDemo extends JFrame { private static final long serialVersionUID = -5355432125621015300L; private String url = null;//文件路径 private String str=null;//复制或剪切 的字符串 private StringSelection stringSelection=null; private Clipboard clipboard=new Clipboard(str); private Transferable transferable=null; private DataFlavor flavor=null; public TestDemo() { init(); } private void init() { setTitle("我的记事本"); setSize(500, 600); setContentPane(createContentPane());//添加主面板 } /*创建主面板*/ private JPanel createContentPane() { JPanel pane = new JPanel(new BorderLayout()); pane.add(BorderLayout.NORTH, createChocePane());//添加菜单栏 pane.add(createAreaPane());//添加文本编辑区域 return pane; } /*创建菜单栏,以及实现功能*/ private JPanel createChocePane() { JPanel pane = new JPanel(); JMenuBar menuBar1 = new JMenuBar(); JMenu menu = new JMenu("文件"); menuBar1.add(menu); JMenuItem menuIt1 = new JMenuItem("新建"); JMenuItem menuIt2 = new JMenuItem("打开"); JMenuItem menuIt3 = new JMenuItem("保存"); JMenuItem menuIt4 = new JMenuItem("另存为"); menu.add(menuIt1); menu.add(menuIt2); menu.add(menuIt3); menu.add(menuIt4); JMenuBar menuBar2 = new JMenuBar(); JMenu menu2 = new JMenu("编辑"); menuBar2.add(menu2); JMenuItem menuIt5 = new JMenuItem("复制"); JMenuItem menuIt6 = new JMenuItem("剪切"); JMenuItem menuIt7 = new JMenuItem("粘帖"); menu2.add(menuIt5); menu2.add(menuIt6); menu2.add(menuIt7); JMenuBar menuBar3 = new JMenuBar(); JMenu menu3 = new JMenu("帮助"); menuBar3.add(menu3); JMenuItem menuIt8 = new JMenuItem("关于记事本"); menu3.add(menuIt8); pane.add(menuBar1); pane.add(menuBar2); pane.add(menuBar3); menuIt1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { testArea.setText(null); } }); menuIt2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { final FileDialog fd = new FileDialog(new JFrame(), "查找文件", FileDialog.LOAD); fd.setVisible(true); if (fd.getDirectory() != null && fd.getFile() != null) { testArea.setText(null); url = fd.getDirectory() + fd.getFile(); try { BufferedReader in = new BufferedReader(new FileReader( url)); for (int i = 0;; i++) { testArea.append(in.readLine()); if (in.read() == -1) { break; } else continue; } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } }); menuIt3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (url==null) { url="D:\新建 文本文档.txt"; } File f = new File(url); BufferedWriter out = null; try { out = new BufferedWriter(new FileWriter(url)); f.createNewFile(); out.append(testArea.getText()); out.flush(); } catch (IOException e1) { e1.printStackTrace(); } finally { try { out.close(); } catch (IOException e1) { e1.printStackTrace(); } } } }); menuIt4.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FileDialog fd = new FileDialog(new JFrame(), "保存文本", FileDialog.SAVE); fd.setVisible(true); if (url!=null) { File f = new File(url); BufferedWriter out = null; try { f.createNewFile(); out = new BufferedWriter(new FileWriter(url)); out.append(testArea.getText()); out.flush(); } catch (IOException e) { e.printStackTrace(); } finally { try { out.close(); } catch (IOException e) { e.printStackTrace(); } } } } }); menuIt5.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { str=testArea.getSelectedText(); stringSelection=new StringSelection(str); clipboard.setContents(stringSelection, null); } }); menuIt6.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { str=testArea.getSelectedText(); stringSelection=new StringSelection(str); clipboard.setContents(stringSelection, null); int start=testArea.getSelectionStart(); int end=testArea.getSelectionEnd(); testArea.replaceRange( null,start,end); } }); menuIt7.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { transferable=clipboard.getContents(this); flavor=DataFlavor.stringFlavor; if (transferable.isDataFlavorSupported(flavor)) { int start=testArea.getSelectionStart(); int end=testArea.getSelectionEnd(); testArea.replaceRange( null,start,end); int pos=testArea.getCaretPosition(); try { str=(String)transferable.getTransferData(flavor); testArea.insert(str, pos); } catch (UnsupportedFlavorException e1) { e1.printStackTrace(); } catch (IOException e1) { e1.printStackTrace(); } } } }); menuIt8.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(null,"功能简单,绝对原创 "); } }); return pane; } JTextArea testArea; private JScrollPane createAreaPane() { JScrollPane pane = new JScrollPane(); pane.setBorder(new TitledBorder("编辑区域")); testArea = new JTextArea(); testArea.setFont(new Font("宋体", Font.BOLD, 13)); testArea.setLineWrap(true); pane.getViewport().add(testArea); return pane; } public static void main(String[] args) { TestDemo td = new TestDemo(); td.setVisible(true); } }

用java编写一个体现菜单功能的文本编辑器。

import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; public class MyTextEditor extends JFrame implements ActionListener,ItemListener,MouseListener { private File file; private JTextArea textarea; private JRadioButtonMenuItem rbmi_red,rbmi_blue,rbmi_green; private JMenuItem menuitem_copy,menuitem_cut,menuitem_paste,menuitem_seek; private JMenuItem menuitem_song,menuitem_fang,menuitem_kai;//字体变量 private JMenuItem menuitem_normal,menuitem_bold,menuitem_italic;//字形变量 private JMenuItem menuitem_20,menuitem_30,menuitem_40;//字号变量 private JMenuItem menuitem_exit,menuitem_infor; private JPopupMenu popupmenu; private JMenuItem menuitem_red,menuitem_green,menuitem_blue; private JDialog dialog,dialog1; private JButton button_seek; private JTextField textfield_seek; private JLabel label_seek,label_infor; String seek; public MyTextEditor() { super("文本编辑器"); this.setSize(400,300); this.setLocation(360,300); this.setDefaultCloseOperation(HIDE_ON_CLOSE); Container ss=this.getContentPane(); this.textarea = new JTextArea(); JScrollPane dd=new JScrollPane(textarea); ss.add(dd); textarea.addMouseListener(this); this.addMenu(); this.setVisible(true); this.Dialog(); this.Dialog1(); this.file = null; } public MyTextEditor(String filename) { this(); if (filename!=null) { this.file = new File(filename); this.setTitle(filename); this.textarea.setText(this.readFromFile()); } } public MyTextEditor(File file) { this(); if (file!=null) { this.file = file; this.setTitle(this.file.getName()); this.textarea.setText(this.readFromFile()); } } public void Dialog() //建立对话框的方法 { dialog=new JDialog(this,"查找",true); dialog.setLayout(new FlowLayout()); dialog.setSize(200,90); label_seek=new JLabel("查找内容"); dialog.add(label_seek); textfield_seek=new JTextField(10); dialog.add(textfield_seek); button_seek=new JButton("查找"); dialog.add(button_seek); button_seek.addActionListener(this); } public void Dialog1() { dialog1=new JDialog(this,"专利",true); dialog1.setLayout(new FlowLayout()); dialog1.setSize(200,100); label_infor=new JLabel("刘同虎制作"); dialog1.add(label_infor); } public void addMenu() { JMenuBar menubar = new JMenuBar(); this.setJMenuBar(menubar); JMenu menu_file = new JMenu("文件"); //文件菜单 menubar.add(menu_file); JMenuItem menuitem_open = new JMenuItem("打开"); menu_file.add(menuitem_open); menuitem_open.addActionListener(this); JMenuItem menuitem_save = new JMenuItem("保存"); menu_file.add(menuitem_save); menuitem_save.addActionListener(this); JMenuItem menuitem_saveas = new JMenuItem("另存为"); menu_file.add(menuitem_saveas); menuitem_saveas.addActionListener(this); menuitem_exit=new JMenuItem("退出" ); menu_file.add(menuitem_exit); menuitem_exit.addActionListener(this); menuitem_infor=new JMenuItem("信息"); menu_file.add(menuitem_infor); menuitem_infor.addActionListener(this); JMenu menu_editor=new JMenu("编辑");//编辑菜单 menubar.add(menu_editor); menuitem_seek=new JMenuItem("查找"); menu_editor.add(menuitem_seek); menuitem_seek.addActionListener(this); menuitem_copy=new JMenuItem("复制"); menuitem_copy.addActionListener(this); menu_editor.add(menuitem_copy); menuitem_cut=new JMenuItem("剪切"); menu_editor.add(menuitem_cut); menuitem_cut.addActionListener(this); menuitem_paste=new JMenuItem("粘贴"); menu_editor.add(menuitem_paste); menuitem_paste.addActionListener(this); JMenuItem menu_color=new JMenu("颜色");//颜色菜单 menu_editor.add(menu_color); ButtonGroup buttongroup=new ButtonGroup(); rbmi_red=new JRadioButtonMenuItem("红",true); buttongroup.add(rbmi_red); menu_color.add(rbmi_red); rbmi_red.addItemListener(this); rbmi_blue=new JRadioButtonMenuItem("蓝",true); buttongroup.add(rbmi_blue); menu_color.add(rbmi_blue); rbmi_blue.addItemListener(this); rbmi_green=new JRadioButtonMenuItem("绿",true); buttongroup.add(rbmi_green); menu_color.add(rbmi_green); rbmi_green.addItemListener(this); JMenu menu_font=new JMenu("设置字体");//设置字体菜单 menubar.add(menu_font); menuitem_song=new JMenuItem("宋体"); menu_font.add(menuitem_song); menuitem_song.addActionListener(this); menuitem_fang=new JMenuItem("仿宋"); menu_font.add(menuitem_fang); menuitem_fang.addActionListener(this); menuitem_kai=new JMenuItem("楷体"); menu_font.add(menuitem_kai); menuitem_kai.addActionListener(this); JMenu menu_style=new JMenu("设置字形");//设置字形菜单 menubar.add(menu_style); menuitem_bold=new JMenuItem("粗体"); menu_style.add(menuitem_bold); menuitem_bold.addActionListener(this); menuitem_italic=new JMenuItem("斜体"); menu_style.add(menuitem_italic); menuitem_italic.addActionListener(this); JMenu menu_size=new JMenu("设置字号"); //设置字号菜单 menubar.add(menu_size); menuitem_20=new JMenuItem("20"); menu_size.add(menuitem_20); menuitem_20.addActionListener(this); menuitem_30=new JMenuItem("30"); menu_size.add(menuitem_30); menuitem_30.addActionListener(this); menuitem_40=new JMenuItem("40"); menu_size.add(menuitem_40); menuitem_40.addActionListener(this); popupmenu=new JPopupMenu(); //快捷菜单 JMenuItem menuitem_red=new JMenuItem("红色"); popupmenu.add(menuitem_red); menuitem_red.addActionListener(this); JMenuItem menuitem_green=new JMenuItem("绿色"); popupmenu.add(menuitem_green); menuitem_green.addActionListener(this); menuitem_blue=new JMenuItem("蓝色"); popupmenu.add(menuitem_blue); menuitem_blue.addActionListener(this); textarea.add(popupmenu); //向文本区内添加快捷菜单 } public void writeToFile(String lines) //写文件 { try { FileWriter fout = new FileWriter(this.file); fout.write(lines+" "); fout.close(); } catch (IOException ioex) { return; } } public String readFromFile() //读文件 { try { FileReader fin = new FileReader(this.file); BufferedReader bin = new BufferedReader(fin); String aline="", lines=""; do { aline = bin.readLine(); if (aline!=null) lines += aline + " "; } while (aline!=null); bin.close(); fin.close(); return lines; } catch (IOException ioex) { return null; } }

美国200G美国高防服务器16G,800元

美国高防服务器提速啦专业提供美国高防服务器,美国高防服务器租用,美国抗攻击服务器,高防御美国服务器租用等。我们的海外高防服务器带给您坚不可摧的DDoS防护,保障您的业务不受攻击影响。HostEase美国高防服务器位于加州和洛杉矶数据中心,均为国内访问速度最快最稳定的美国抗攻击机房,带给您快速的访问体验。我们的高防服务器配有最高层级的DDoS防护系统,每款抗攻击服务器均拥有免费DDoS防护额度,让您...

月神科技:香港CN2/洛杉矶CN2/华中电信高防vps,月付20元起

月神科技怎么样?月神科技是由江西月神科技有限公司运营的一家自营云产品的IDC服务商,提供香港安畅、香港沙田、美国CERA、华中电信等机房资源,月神科技有自己的用户群和拥有创宇认证,并且也有电商企业将业务架设在月神科技的平台上。目前,香港CN2云服务器、洛杉矶CN2云主机、华中电信高防vps,月付20元起。点击进入:月神科技官方网站地址月神科技vps优惠信息:香港安畅CN2-GIA低至20元核心:2...

Pia云服务香港月20元游戏提供香港CN2云服务器

Pia云商家在前面有介绍过一次,根据市面上的信息是2018的开办的国人商家,原名叫哔哔云,目前整合到了魔方云平台。这个云服务商家主要销售云服务器VPS主机业务和服务,云服务器采用KVM虚拟架构 。目前涉及的机房有美国洛杉矶、中国香港和深圳地区。洛杉矶为crea机房,三网回程CN2 GIA,自带20G防御。中国香港机房的线路也是CN2直连大陆,比较适合建站或者有游戏业务需求的用户群。在这篇文章中,简...

java文本编辑器为你推荐
防护防护用品包括哪些?防护个人防护措施有哪些?win10发布win10什么时候发布正式版路由器映射我家被人装路由器映射有什么用全球随机视频网全球随机视频网的发展方向快照优化快照跟不上优化节奏优化方法出问题?网络购物的发展网购发展史暂停线程怎么让一个线程暂停淘宝推广网站有没有淘宝第三方推广平台好用的?官方网店官方网店和官方旗舰店有什么区别?
老域名失效请用户记下 海外域名注册 域名服务器上存放着internet主机的 如何申请免费域名 3322动态域名 blackfriday 圣迭戈 主机屋免费空间 好看的桌面背景大图 云主机51web e蜗 什么是刀片服务器 免费申请网站 银盘服务是什么 网购分享 smtp服务器地址 net空间 中国电信测速网站 酸酸乳 空间申请 更多