龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

用JBuilder 9 开发一个文本编辑器

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
一、概述 文本编辑器是一种最常用的应用程序,下面我们利用Jbuilder 9集成开发环境,用Java语言实现一个简单的文本编辑器。该文本编辑器具有读出、写入、编辑文本文件,可以设定文
一、概述 文本编辑器是一种最常用的应用程序,下面我们利用Jbuilder 9集成开发环境,用Java语言实现一个简单的文本编辑器。该文本编辑器具有读出、写入、编辑文本文件,可以设定文字颜色、字形和编辑区域背景颜色等基本功能。
   我们首先通过Jbuilder 9项目向导和应用向导创建项目,然后应用可视化设计工具,修改UI设计,连接事件,编辑源码以及常用控件和任务诸如菜单项、工具条、文本区域和系统事件等常用控件和任务的处理。涉及到具体技术有:
  
   用JFileChooser 对话框让用户选择文本文件。
  
   用JtextArea读、写和处理文本文件中的文字。
  
   设置前景色和背景色。
  
   用dbSwing FontChooser对话框设置字型。
  
   在状态栏和窗口标题栏显示信息。
  
   手工添加处理UI事件的代码 。
  
   通过将代码放在一个可被菜单项和按钮两个事件处理器调用的新的"帮助"方法中, 使得菜单项和按钮执行相同的代码。
  
   给JtextArea控件增加一个右击菜单。
  
   保持对文件的位置以及文件是否活动过的跟踪,展示对文件新建, 文件打开, 文件保存, 文件另存为,编辑和退出等逻辑的处理。
  
   将"Text Editor" 应用程序展开为JAR 文件。
  
  二、开发文本编辑器java源程序说明
  
  文本编辑器程序包含三个java 源程序即TextEditFrame.java、TextEditclass.java 和TextEditFrame_AboutBox.java 程序,下面将分别介绍如下:
  
  1、TextEditFrame.java的源程序代码(节选部分):
  
  package texteditor;
  //TextEditFrame.java
  import java.awt.*;//导入类
  import java.awt.event.*;
  import javax.swing.*;
  import com.borland.dbswing.*;
  import java.io.*;
  import javax.swing.text.*;
  import javax.swing.event.*;
  public class TextEditFrame extends JFrame {
  IntlSwingSupport intlSwingSupport1 = new IntlSwingSupport();
  //Swing 控件互联网化:即本地化应用程序,需要添加一行代码以便Swing 控件JfileChooser //和JcolorChooser出现在程序运行的语言中
  JPanel contentPane; //设置内容窗(contentPane)的JPanel控件
  JMenuBar menuBar1 = new JMenuBar();//创建菜单条并加入到框架窗体中
  JMenu menuFile = new JMenu();//创建File菜单和相应的菜单项
  JMenuItem menuFileExit = new JMenuItem();
  JMenu menuHelp = new JMenu();//创建Help菜单和相应的菜单项
  JMenuItem menuHelpAbout = new JMenuItem();
  JToolBar toolBar = new JToolBar();//创建工具条组件
  JButton jButton1 = new JButton();//创建按钮组件
  JButton jButton2 = new JButton();
  JButton jButton3 = new JButton();
  ImageIcon image1;//定义图标
  ImageIcon image2;
  ImageIcon image3;
  JLabel statusBar = new JLabel();//创建标签组件
  BorderLayout borderLayout1 = new BorderLayout();//创建BorderLayout 布局器
  JScrollPane jScrollPane1 = new JScrollPane();//创建滚动窗控件
  JTextArea jTextArea1 = new JTextArea();//创建多行文本域组件
  JMenuItem jMenuItem1 = new JMenuItem();//创建菜单项
  JMenuItem jMenuItem2 = new JMenuItem();
  JMenuItem jMenuItem3 = new JMenuItem();
  JMenuItem jMenuItem4 = new JMenuItem();
  FontChooser fontChooser1 = new FontChooser();//创建字型选择对话框
  JMenu jMenu1 = new JMenu();
  JMenuItem jMenuItem5 = new JMenuItem();
  JMenuItem jMenuItem6 = new JMenuItem();
  JMenuItem jMenuItem7 = new JMenuItem();
  JFileChooser jFileChooser1 = new JFileChooser();//创建文本选择对话框
  String currFileName = null; // Full path with filename. null means new/untitled.
  boolean dirty = false;
  Document document1; //文本
  DBTextDataBinder dBTextDataBinder1 = new DBTextDataBinder();
  // True means modified text.
  //构造架框
  public TextEditFrame() {
   enableEvents(AWTEvent.WINDOW_EVENT_MASK);
   try {
  jbInit();
  updateCaption();
  
  
精彩图集

赞助商链接