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

Java AWT 入門:從零構建帶選單列的 GUI 視窗應用

     編輯:Java 綜合教學

Java AWT 入門:從零構建帶選單列的 GUI 視窗應用

雖然現代 Java 桌面開發多用 Swing/JavaFX,但理解 AWT 基礎組件(MenuBar、Menu、MenuItem)有助於掌握事件驅動模型核心。本文通過完整範例示範如何建立含「檔案→退出」選單的視窗程式。

核心類別與職責

類別說明
Frame頂層視窗容器,呼叫 setMenuBar() 安裝選單列
MenuBar選單列容器,持有多個 Menu
Menu下拉選單,可包含 MenuItem 或子 Menu
MenuItem具體選單項目,觸發 ActionEvent

完整程式碼實作

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

public class MenuBarDemo {
    private Frame frame;
    private MenuBar menuBar;
    private Menu menu;
    private MenuItem menuItem;

    public MenuBarDemo() {
        init();
        addEvents();
    }

    private void init() {
        frame = new Frame("選單測試");
        frame.setBounds(300, 200, 500, 400);
        frame.setLayout(new FlowLayout());

        // 建立選單結構
        menuBar = new MenuBar();
        menu = new Menu("檔案");
        menuItem = new MenuItem("退出");

        menu.add(menuItem);
        menuBar.add(menu);
        frame.setMenuBar(menuBar);

        frame.setVisible(true);
    }

    private void addEvents() {
        // 視窗關閉事件
        frame.addWindowListener(new WindowAdapter() {
            @Override public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

        // 選單點擊事件
        menuItem.addActionListener(e -> System.exit(0));
    }

    public static void main(String[] args) {
        new MenuBarDemo();
    }
}

關鍵步驟解析

  1. 組件組裝: 由內而外建立 MenuItem → Menu → MenuBar → Frame。
  2. 事件綁定: 使用 ActionListener 處理點擊,WindowAdapter 處理關閉按鈕。
  3. Lambda 簡化: Java 8+ 可用 Lambda 替代匿名內部類,程式碼更簡潔。

AWT 選單視窗運行截圖

遷移建議

實際專案建議改用 Swing (JFrame, JMenuBar) 或 JavaFX,獲得更豐富的元件、現代外觀與更好的執行緒模型。AWT 僅作為教學與輕量級嵌入式場景使用。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved