import java.awt.*;
import java.awt.event.*;

public class MenuDisplayExample extends Frame implements ActionListener {

    Label messageLabel; // Label to show message

    MenuDisplayExample() {
        // Create MenuBar
        MenuBar menubar = new MenuBar();

        // Create Menus
        Menu file = new Menu("File");
        Menu edit = new Menu("Edit");
        Menu help = new Menu("Help");

        // Create MenuItems for File Menu
        MenuItem newFile = new MenuItem("New");
        MenuItem openFile = new MenuItem("Open");
        MenuItem saveFile = new MenuItem("Save");
        MenuItem exit = new MenuItem("Exit");

        // Add MenuItems to File Menu
        file.add(newFile);
        file.add(openFile);
        file.add(saveFile);
        file.addSeparator();
        file.add(exit);

        // Create MenuItems for Edit Menu
        MenuItem cut = new MenuItem("Cut");
        MenuItem copy = new MenuItem("Copy");
        MenuItem paste = new MenuItem("Paste");

        edit.add(cut);
        edit.add(copy);
        edit.add(paste);

        // Add Menus to MenuBar
        menubar.add(file);
        menubar.add(edit);
        menubar.add(help);

        // Set MenuBar to Frame
        setMenuBar(menubar);

        // Create Label to display text
        messageLabel = new Label("Choose a menu item...", Label.CENTER);
        messageLabel.setFont(new Font("Arial", Font.BOLD, 16));

        // Use BorderLayout and add label to center
        setLayout(new BorderLayout());
        add(messageLabel, BorderLayout.CENTER);

        // Register ActionListener for all menu items
        MenuItem[] allItems = { newFile, openFile, saveFile, exit, cut, copy, paste };
        for (MenuItem item : allItems) {
            item.addActionListener(this);
        }

        // Frame settings
        setTitle("AWT Menu Example");
        setSize(500, 300);
        setVisible(true);

        // Close window properly
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
    }

    // Handle Menu Item Clicks
    public void actionPerformed(ActionEvent e) {
        String command = e.getActionCommand();
        messageLabel.setText("You selected: " + command);

        if (command.equals("Exit")) {
            System.exit(0);
        }
    }

    public static void main(String[] args) {
        new MenuDisplayExample();
    }
}
