如何用Java编写文本编辑器?

能实现基本功能,能插入图片哦!

package myclass;

import java.awt.*;
import java.awt.event.*;
import java.io.*;

import javax.swing.*;

import com.sun.tools.hat.internal.parser.Reader;
public class MyTxt extends JFrame implements ActionListener
{
JTextArea ta;
JMenuItem open,save,myexit,open1,save1;
JMenuItem copy,palse;
JMenuBar mb;
JPopupMenu popm;
JScrollPane sp;
public void createmenu()
{
mb=new JMenuBar();
JMenu m1=new JMenu("文件");
JMenu m2=new JMenu("编辑");
JMenu m3=new JMenu("字体");
mb.add(m1);mb.add(m2);m2.add(m3);

open=new JMenuItem("打开");
//ImageIcon ii = new ImageIcon("a.gif");
//open.setIcon(new ImageIcon("b.gif"));
open.addActionListener(this);
save=new JMenuItem("保存");
save.addActionListener(this);
myexit=new JMenuItem("退出");
myexit.addActionListener(this);
m1.add(open);m1.add(save);m1.add(myexit);

copy=new JMenuItem("复制");
palse=new JMenuItem("粘贴");
m2.add(copy);m2.add(palse);
popm=new JPopupMenu ();
open1=new JMenuItem("打开");
open1.addActionListener(this);
save1=new JMenuItem("保存");
save1.addActionListener(this);
popm.add(open1);popm.add(save1);
ta.add(popm);
ta.addMouseListener(new MyMouseEvent(this));

}

class MyMouseEvent extends MouseAdapter
{
MyTxt myparentFrame;
MyMouseEvent ( MyTxt m)
{
myparentFrame=m;
}
public void mouseReleased(MouseEvent e)
{
if(e.isPopupTrigger())
myparentFrame.popm.show((Component)e.getSource(),e.getX(),e.getY()); }
}

public MyTxt ()
{
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
dispose();
System.exit(0);
}
});

ta=new JTextArea(10,30);
add(ta,BorderLayout.CENTER);
Panel p1=new Panel();
add(p1,BorderLayout.SOUTH);
setVisible(true);
setSize(500,500);
//pack();
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();//获取屏幕大小
int w = getSize().width;
int h = getSize().height;
int x = (dim.width-w)/2;
int y = (dim.height-h)/2;
setLocation(x,y);
createmenu();
setJMenuBar(mb);
sp = new JScrollPane(ta);
getContentPane().add(sp);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand()=="打开")
try
{
openfile();
}
catch(IOException ex){}
if(e.getActionCommand()=="保存")
{
try {
savefile();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
if(e.getActionCommand()=="退出")
{
dispose();
System.exit(0);
}

}
public void savefile() throws IOException
{
FileDialog fd=new FileDialog(this,"保存",FileDialog.SAVE);
fd.setVisible(true);
FileWriter fw=new FileWriter( fd.getDirectory()+fd.getFile());
for(int i=0;i<ta.getText().length();i++)
{
fw.write(ta.getText().charAt(i));
}
fw.close();
}
public void openfile() throws IOException
{
FileDialog fd=new FileDialog(this,"打开",FileDialog.LOAD);
fd.setVisible(true);
FileReader fr=new FileReader( fd.getDirectory()+fd.getFile());
int n=0;
int row=10;
while((n=fr.read())!=-1)
{
ta.append(""+(char)n);
row--;
if(row==0)
{
ta.append("\n");
row=20;
}
}
fr.close();
}
public static void main(String []args)
{
MyTxt tw=new MyTxt();
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-09-10
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class f1 extends Frame implements ActionListener
{
private MenuBar menubar=new MenuBar();
private Menu filemenu=new Menu("文件");
private Menu editmenu=new Menu("编辑");
private Menu formmenu=new Menu("格式");
private MenuItem[] itemf=new MenuItem[4];
private MenuItem[] iteme=new MenuItem[6];
private MenuItem[] items=new MenuItem[2];
private TextArea tf=new TextArea();

public int a=0,b=0,c=0,style=Font.PLAIN,size=15;
public String s1="red:"+a+" "+"green:"+b+" "+"blue"+c,
s2="宋体";

public String[] sz1={"10","16","24","30","32","36"},
sz2={"宋体","黑体","幼圆","隶书","行楷","Arial","Georgia"},
sz3={"粗体","倾斜","常规","粗斜"};

JDialog dialog=new JDialog(this,"字体",true);
Container cp=dialog.getContentPane();
JLabel[] lb=new JLabel[8];
JLabel lb1=new JLabel(s1,JLabel.LEFT);
JButton b1=new JButton("确定"),
b2=new JButton("取消");
JComboBox jc1=new JComboBox(),
jc2=new JComboBox(),
jc3=new JComboBox();
JScrollBar jb1=new JScrollBar(JScrollBar.HORIZONTAL,10,5,0,260);
JScrollBar jb2=new JScrollBar(JScrollBar.HORIZONTAL,10,5,0,260);
JScrollBar jb3=new JScrollBar(JScrollBar.HORIZONTAL,10,5,0,260);本回答被网友采纳

java编的简单文本编辑器!!急求!!!不要网上随便搜的复制粘贴的!!!_百...
当选择Format时,可以在二级菜单中选择不同的字体方式(加粗、倾斜、不同字号等),选择后文本框中的每一行文字都按照所选方式显示。当选择Help菜单时弹出一个对话框,显示你的学号姓名等个人信息。→ 【要求及评分标准】:最基本的要求是【【能出现文本编辑器的界面,实现File和Help菜单项的功能,并且面板窗口能正常关闭。

java编译文本编辑器
text_size.addActionListener(this); \/\/注册文本行的单击事件监听器 checkbox_bold = new JCheckBox("粗体"); \/\/复选框 panel.add(checkbox_bold); checkbox_bold.addItemListener(this); \/\/注册复选框的选择事件监听器 checkbox_italic = new JCheckBox("斜体"); panel.add(checkbox_italic); checkbox_itali...

如何用java编写一个简单的文本编辑器?
import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;public class f1 extends Frame implements ActionListener { private MenuBar menubar=new MenuBar();private Menu filemenu=new Menu("文件");private Menu editmenu=new Menu("编辑");private Menu formmenu=new...

能编译运行java的简单文本编辑器
import java.awt.BorderLayout;public class WordProcessSystem extends JFrame{ private JFileChooser chooser;private JTextArea textArea;private File file;private String string = "";private Font font;public WordProcessSystem(){ super();setTitle("文字处理系统");setBounds(100, 100,600, 500);...

编写一个文本文件编辑器 具有简单的讲取 编辑 存盘等功能
JTextPane text=new JTextPane(); \/\/这是用来做文本框的 JFileChooser filechooser=new JFileChooser(); \/\/文件选择框 JColorChooser colorchooser=new JColorChooser();\/\/ JDialog about=new JDialog(this); \/\/关于对话框 JMenuBar menubar=new JMenuBar();\/\/菜单 JMenu[] menus=new JMenu[]{ new J...

用java代码,在不使用AWT,SWING的情况下,如何开发文本编辑器
AWT,Swing都是JAVA图形界面开发组件,你要用JAVA做编辑器,那为什么又不用图形界面开发,还有SWT,也只是对Swing 的进一步封装。SWT开发确实比前两者方便,但是如果是对于学习用的话,前两都在JDK帮助文档全有,如果要做要用JAVA做图形界面的桌面程序,本人推荐楼主使用Swing。就算不会,只要会看帮助文档...

Jedit怎么用?Jedit文本编辑器使用方法图文详解介绍_Jedit怎么用?Jedit...
Jedit是一款深受程序员喜爱的Java文本编辑器,下面将详细讲解其使用方法。首先,安装过程相当直接。只需解压文件,然后将文件夹复制到Jedit的安装目录下的properties文件夹中,进行下一步的安装。安装完成后,你可以通过工具集进行全局设置,如默认编码选择GBK,备份编码设为UTF-8,以及折叠模式设置为indent。...

求JAVA编写的文本编辑器。
求JAVA编写的文本编辑器。最好旁边有文字解说的。我不是要软件。是用JAVA自己写个文本编辑器,是我的作业。你总不能让我拿个eclipse去交作业吧!图形界面不做要求,但必须有“新建”、... 求JAVA编写的文本编辑器。最好旁边有文字解说的。我不是要软件。是用JAVA自己写个文本编辑器,是我的作业。你总不能让我...

使用java开发代码编辑器(使用java开发代码编辑器的好处)
如何用java编写一个简单的文本编辑器? importjava.awt.*;\\x0d\\x0aimportjava.awt.event.*;\\x0d\\x0aimportjavax.swing.*;\\x0d\\x0aimportjava.io.*;\\x0d\\x0a\\x0d\\x0apublicclassf1extendsFrameimplementsActionListener\\x0d\\x0a{\\x0d\\x0aprivateMenuBarmenubar=newMenuBar();\\x0d\\x0aprivate...

java最好用的编辑器(java最好用的编辑器排名)
Java的编辑器用哪个比较好? 1、初学者: 初学者建议用JCreator,编译,运行比较简单,大部分代码多是需要手敲的。不过可以熟悉各个类,和使用。 2、J2EE,J2ME开发: 一般都使用Eclipse或MyEclipse,这两个提供了丰富的插件和友好的编辑界面,能耗也比较低,速度比较快。 3、J2SE开发: 建议使用NetBeans,Eclipse也是可以的,不...

相似回答