📅  最后修改于: 2023-12-03 15:29:33.200000             🧑  作者: Mango
AWT(Abstract Window Toolkit)是一套Java提供的开发图形用户界面(GUI)的基础类库,其中包含了一些常见的GUI组件,例如文本框、按钮、菜单、对话框等等,AWT菜单类就是其中的一部分。
AWT菜单类提供了一种创建和管理菜单的方式,可以方便地在应用程序中添加菜单和子菜单,以及设置菜单项的事件处理等。
public Menu(String label)
:创建一个带指定标签的新菜单。public MenuBar getParent()
:返回包含此菜单的菜单栏,如果此菜单不是由菜单栏直接包含,则返回null。public MenuItem add(MenuItem item)
:将指定菜单项添加到此菜单中。public void addSeparator()
:在此菜单的末尾添加一个分隔条。public int getItemCount()
:返回菜单项的数量。public MenuItem getItem(int index)
:返回指定位置的菜单项。public void setEnabled(boolean b)
:启用或禁用此菜单及其所有子菜单项。public MenuItem(String label)
:创建具有指定标签的新菜单项。public void addActionListener(ActionListener l)
:添加此菜单项的事件监听器。public boolean isEnabled()
:检查此菜单项是否启用。public void setEnabled(boolean b)
:启用或禁用此菜单项。public String getLabel()
:获取此菜单项的标签。public void setLabel(String label)
:设置此菜单项的标签。以下是一个简单的示例代码,演示了如何创建一个菜单和子菜单,并设置菜单项的事件处理。
import java.awt.*;
import java.awt.event.*;
public class MenuExample extends Frame implements ActionListener {
private MenuItem menuItem;
public MenuExample() {
super("Menu Example");
MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu("File");
Menu menuEdit = new Menu("Edit");
Menu menuView = new Menu("View");
menuBar.add(menuFile);
menuBar.add(menuEdit);
menuBar.add(menuView);
MenuItem menuItemNew = new MenuItem("New");
menuItemNew.addActionListener(this);
menuFile.add(menuItemNew);
MenuItem menuItemSave = new MenuItem("Save");
menuItemSave.addActionListener(this);
menuFile.add(menuItemSave);
MenuItem menuItemCopy = new MenuItem("Copy");
menuItemCopy.addActionListener(this);
menuEdit.add(menuItemCopy);
MenuItem menuItemCut = new MenuItem("Cut");
menuItemCut.addActionListener(this);
menuEdit.add(menuItemCut);
Menu menuZoom = new Menu("Zoom");
menuView.add(menuZoom);
MenuItem menuItem100 = new MenuItem("100%");
menuItem100.addActionListener(this);
menuZoom.add(menuItem100);
MenuItem menuItem200 = new MenuItem("200%");
menuItem200.addActionListener(this);
menuZoom.add(menuItem200);
Menu menuHelp = new Menu("Help");
menuBar.setHelpMenu(menuHelp);
setMenuBar(menuBar);
setSize(300, 300);
setVisible(true);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
}
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
switch (command) {
case "New":
System.out.println("New menu item selected");
break;
case "Save":
System.out.println("Save menu item selected");
break;
case "Copy":
System.out.println("Copy menu item selected");
break;
case "Cut":
System.out.println("Cut menu item selected");
break;
case "100%":
System.out.println("Zoom 100% menu item selected");
break;
case "200%":
System.out.println("Zoom 200% menu item selected");
break;
default:
break;
}
}
public static void main(String[] args) {
new MenuExample();
}
}
AWT菜单类提供了一种创建和管理菜单的方式,使用菜单类可以方便地在应用程序中添加菜单和子菜单,以及设置菜单项的事件处理等。在使用过程中,需要了解常用的方法和属性,以充分发挥其作用。