zoukankan      html  css  js  c++  java
  • java学习:AWT组件和事件处理的笔记(1)--菜单条,菜单,菜单项

    菜单放在菜单条里,菜单项放在菜单里
    1.MenuBar
        在java.awt包中,负责创建菜单条,即MenuBar的一个实例,便是一个菜单条。
        在Frame类中的setMenuBar(MenuBar bar)方法,可把菜单条添加到窗口的顶端,但只能向窗口中添加一个菜单条
    2.Menu
        在java.awt包中,负责创建菜单,即Menu的一个实例,便是一个菜单。
        Meun类的方法如下:
                Menu()   建立一个空标题的菜单
                Menu(String s)     建立一个标题为s的菜单
                public void add(MenuItem item)    向菜单中添加由参数item指定的菜单项
                public MenuItem getItem(int n)    得到指定索引处的菜单项
                public int getItemCount()    得到菜单项数目
    3.MenuItem
        在java.awt包中,负责创建菜单项,即Menu的一个实例,便是一个菜单项。
        MenuItem类的方法如下:
                MenuItem()    创建无标题菜单项
                MenuItem(String s)    构造标题为s的菜单项
                public void setEnable(boolean b)    设置当前菜单项是否可被选择
                public String getLabel()    得到菜单项的名字
    4.有关菜单的几个技巧
        (1)增加菜单项分隔线
            要在菜单项之间增加分隔线。只需使用Menu类中的addSeparator()方法
            如下:
                menu1.add("新建");//menu1是Menu的一个实例
                menu1.addSeparator();//在新建和保存之间添加分隔线
                menu1.add("保存");
                menu1.add("打印");
        (2)复选框菜单项
            如果想在选择一个菜单项时出现对号标记,可以用CheckboxMenuItem类来创建这个菜单项
            如:
                item1=new CheckboxMenuItem("新建");
        (3)嵌入子菜单
            Menu不仅可以添加MenuItem对象,也可以添加Menu对象,被添加的菜单叫子菜单

    5.窗口和屏幕
    Toolkit类(抽象类,其不能直接用构造方法创建,java运行环境中提供了,可用getToolkit()方法引用)
    有如下方法:Dimension getScreenSize();
    返回的Dimension对象中的width的值是屏幕的宽,heigt的值是屏幕的高

    实练任务:创建一个带菜单的窗口,窗口的宽和屏幕的宽相同,高是屏幕高的一半
    如下代码:

    import java.awt.*;
    class  FirstWindow extends Frame
    {
        MenuBar menubar;
        Menu menu;
        MenuItem item1,item2;
        FirstWindow(String s){
            setTitle(s);
            Toolkit tool=getToolkit();
            Dimension dim=tool.getScreenSize();
            setBounds(0,0,dim.width,dim.height/2);
            menubar=new MenuBar();
            menu=new Menu("文件");
            item1=new MenuItem("打开");
            item2=new MenuItem("保存");
            menu.add(item1);
            menu.add(item2);
            menubar.add(menu);
            setMenuBar(menubar);
            setVisible(true);
        }
        
    }
    public class Example1
    {
        public static void main(String[] args){
            new FirstWindow("这是一个带菜单的窗口");
        }
    }
  • 相关阅读:
    软件工程师的属性与发展
    欢迎使用CSDN-markdown编辑器
    hdu 5446 lucas+crt+按位乘
    poj 2891 模数不互质的中国剩余定理
    3037 插板法+lucas
    poj 1006中国剩余定理模板
    codeforce E
    UVA10820 send a table
    UVA1635 Irrelevant Elements
    uva 10375 Choose and Divide
  • 原文地址:https://www.cnblogs.com/chen521/p/4106612.html
Copyright © 2011-2022 走看看