专栏首页海说13、Java菜单条、菜单、菜单项

13、Java菜单条、菜单、菜单项

13、Java菜单条、菜单、菜单项

一般用Java做界面时,都得牵涉到菜单条、菜单、菜单项的设计。菜单项放在菜单里,菜单放在菜单条里,且其字体均可设置。

13.1、菜单条(Menubar)

Frame类中将菜单条放置到窗口中的方法:setMenuBar(MenuBar bar);该方法将菜单条添加到窗口的顶端。注意:只能向窗口添加一个菜单条。

13.2、菜单(Menu)

Menu类的主要方法有:

1.Menu():建立一个空标题的菜单。

2.Menu(String s):建立一个指定标题s的菜单。

3.public void add(MenuItem item):向菜单添加菜单项item。

4.public void add(String s):向菜单增加指定的选项。

5.public MenuItem getItem(int n):得到指定索引处的菜单项。

6.public int getItemCount():得到菜单选项数目。

7.public void insert(MenuItem item,int n):在菜单的指定位置插入菜单选项。

8.public void insert(String s,int n):在菜单指定位置插入菜单选项。

9.public void remove(int n):删除菜单指定位置的菜单选项。

10.public void removeAll():删除菜单的所有选项。

13.3、菜单项

1.MenuItem():构造无标题菜单项。

2.MenuItem(String s):构造有标题菜单项。

3.public void setEnabled(boolean b):设置当前菜单项是否可被选择。

4.public String getlabel():得到菜单选项的名字。

5.public void addActionListener(ActionListener):向菜单项增加监视器,从菜单项接收行动事件(单击菜单项)。

13.4、菜单项上的ActionEvent事件

单击某个菜单项可以发生ActionEvent事件。

13.5、有关菜单的几个技巧

1.增加菜单分割线

假设menu1是Menu的一个实例,增加分割线的方法:

menu1.add("新建");

menu1.addSeparator();  //分割线

menu1.add("保存");

2.复选框菜单项

item1=new CheckboxMenuItem("新建");

3.嵌入子菜单

Menu是MenuItem的子类,因此菜单项本身还可以是一个菜单。

4.设置菜单项的快捷键

MenuShortcut(int key);  //key取值KeyEvent.VK_A至KeyEvent.VK_Z,也可以取a至z。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 单元测试基本方法

    依照类型划分,单元测试方法可以划分为两大类。一类是针对public方法进行测试,另一类是针对private方法进行测试。 public方法测试 public方法...

    YGingko
  • 动态规划算法

    动态规划过程:每一次决策依赖于当前的状态,即下一状态的产生取决于当前状态。一个决策序列就是在变化的状态中产生的,这种多阶段最优化问题的求解过程就是动态规则过程。...

    YGingko
  • 微信小程序实例

    UI组件 weui-wxss ★852 - 同微信原生视觉体验一致的基础样式库 Wa-UI ★122 - 针对微信小程序整合的一套UI库 wx-charts ...

    YGingko
  • java之学习Random类的概述和注意事项

    吾爱乐享
  • 设计模式之适配器模式

    我们生活中就经常使用到适配器,适配器这个词最早应该是出现在电工学里。有些国家用110V电压,而我国使用的是220V电压,但我们的电器,例如手机、笔记本电脑、平板...

    端碗吹水
  • 给女朋友讲解什么是Optional【JDK 8特性】

    前两天带女朋友去图书馆了,随手就给她来了一本《与孩子一起学编程》的书,于是今天就给女朋友讲解一下什么是Optional类。

    Java3y
  • 小程序线上线下打通增强体验和效率 新零售业该如何把握机会?

    自小程序2017年1月9号正式上线以来,不论是中小商家,还是各大品牌巨头,都在抢占小程序这波风口,打造属于自己的小程序。截至目前,全国正式上线小程序超过100万...

    速成应用小程序开发平台
  • golang代码生成

    makefile在make all之前会先generated_files去进行代码生成,所以首先要理解代码生成的原理,然后才可以很好的知道 这个过程都干啥了.

    sealyun
  • Elasticsearch SQL介绍及实例

    Elasticsearch 是一个全文搜索引擎,具有您期望的所有优点,例如相关性评分,词干,同义词等。而且,由于它是具有水平可扩展的分布式文档存储,因此它可以处...

    zhisheng
  • 使用ELK分析腾讯云CLB日志

    最近在使用腾讯云,想对访问日志进行收集与分析,发现CLB(负责均衡)日志只能保存到COS上面,而且是每个CLB没小时压发送个gz压缩包到COS。

    三杯水Plus

扫码关注云+社区

领取腾讯云代金券