首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Java AWT 實作簡易記事本完整原始碼

     編輯:Java 程式設計入門

專案概述

本範例展示使用 Java AWT(Abstract Window Toolkit)建立一個具備基本編輯功能的桌面記事本應用程式。程式碼包含選單列、工具列、文字編輯區、檔案操作(新建、開啟、儲存、另存新檔)、編輯功能(剪下、複製、貼上、全選、查找)、格式設定、視窗管理與關於對話框等完整功能。

核心類別架構

public class busyworkBook extends WindowAdapter implements ActionListener {
    Frame f = new Frame("JAVA作業本1.0.0 Writer:ZhangYunFeng");
    TextArea a = new TextArea();
    // ...
  • 繼承 WindowAdapter 處理視窗關閉事件
  • 實作 ActionListener 處理選單項目點擊事件
  • 使用 Frame 作為主視窗容器,TextArea 作為文字編輯元件

主要功能實作

選單系統建構

MenuBar mb = new MenuBar();
Menu m1 = new Menu("檔案"), m2 = new Menu("編輯"), m3 = new Menu("格式"), 
     m4 = new Menu("視窗"), m5 = new Menu("說明");
mb.add(m1); mb.add(m2); mb.add(m3); mb.add(m4); mb.setHelpMenu(m5);

使用 MenuBar、Menu、MenuItem 建立傳統下拉式選單,並透過 addActionListener 註冊事件處理。

檔案操作與匿名類別

MenuItem m105 = new MenuItem("離開");
m105.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) { System.exit(1); }
});

// 儲存功能委派給主類別處理
m103.addActionListener(this);

展示匿名內部類別處理簡單事件(如離開),複雜邏輯則由主類別的 actionPerformed 統一處理。

檔案對話框整合

public void actionPerformed(ActionEvent e) {
    FileDialog d = new FileDialog(f, "FileDialog");
    d.setVisible(true);
    String filename = d.getFile();
    // 實際讀寫邏輯需自行補完
}

使用 AWT FileDialog 實現原生檔案選取對話框,但原始碼僅取得檔名,完整讀寫邏輯需搭配 FileReader/FileWriter 實作。

關於對話框實作

public void pin() {
    final Dialog dl = new Dialog(f, "關於JAVA作業本1.0.0");
    dl.addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) { dl.setVisible(false); }
    });
    dl.setBounds(200, 200, 400, 100);
    dl.setBackground(Color.yellow);
    Label l1 = new Label("JAVA作業本1.0.0版,作者:ZHANG YUN FENG, 2004-06-05", Label.CENTER);
    dl.setLayout(new BorderLayout());
    dl.add(l1, "Center");
    dl.setVisible(true);
}

建立模態對話框顯示版本資訊,使用 BorderLayout 置中標籤。

技術特色與限制

特色說明
純 AWT 實作無需 Swing 相依,JDK 1.0+ 即可執行
事件處理模型採用 Java 1.1 委派事件模型(ActionListener、WindowAdapter)
跨平台原生外觀AWT 元件對應各平台原生控制項,風格隨作業系統變化
功能不完整儲存/開啟實際 I/O 邏輯缺失、查找/取代/字體/段落功能僅有選單項目無實作

現代化遷移建議

  • 改用 Swing (JFrame, JTextArea, JFileChooser) 獲得一致跨平台外觀與豐富功能
  • 採用 MVC 架構分離 UI 與資料邏輯
  • 加入編碼自動偵測、行號顯示、語法高亮等現代編輯器特性
  • 使用 try-with-resources 確保檔案串流正確關閉
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved