您的位置:

java菜单项分别实现功能(java实现多级菜单)

本文目录一览:

java 菜单选项加速器中,直接使用char和使用KeyEvent的区别?

菜单是非常重要的GUI组件,其界面提供的信息简明清晰,在用户界面中经常使用。Java

的菜单组件是由多个类组成的,主要有:JMenuBar(菜单栏)、JMenu(菜单)、JMenuItem

(菜单项)和JPopupMenu(弹出菜单)。

每个菜单组件都包含一个菜单栏,每个菜单栏又包含若干个菜单,每个菜单包含若干个

菜单项。菜单项的作用与按钮类似,当用户单击时产生一个命令动作。

Java 中的菜单分为两类:一类是下拉式菜单,通常所说的菜单就是这一类;另一类就是

弹出式菜单。下面我们国外服务器租用商就来介绍菜单的创建和使用方法。

1.创建下拉式菜单

(1)创建菜单栏JMenuBar

菜单栏组件是一个水平菜单。它只能加入到一个框架中,并成为所有菜单树的根。在一

个时刻,一个框架可以显示一个菜单栏。然而,也可以根据程序的状态修改菜单栏,这样,

在不同的时刻就可以显示不同的菜单。例如:

JFrame f=new JFrame("菜单实例"); //创建框架

JMenuBar JMB=new JMenuBar(); //创建菜单栏JMB

f.setJMenuBar(JMB); //设置JMB 为框架f的菜单栏

菜单栏不支持监听者。作为普通菜单行为的一部分,在菜单栏的区域中发生的事件和普

通组件一样会被自动处理。

(2)创建菜单,添加到菜单栏中

菜单提供了一个基本的下拉式菜单。美国服务器租用商提醒您它可以加入到一个菜单栏或者另一个菜单中,例如

(接上例):

JMenu m1=new JMenu("File"); //创建File 菜单m1

JMenu m2=new JMenu("Edit");

JMenu m3=new JMenu("Tool");

JMenu m4=new JMenu("Help");

JMB.add(m1); //把m1 添加到菜单条JMB 中

JMB.add(m2);

JMB.add(m3);

JMB.add(m4);

(3)创建菜单项,加入到菜单中

菜单项是菜单树的“叶”节点。它们通常被加入到菜单中,以构成一个完整的菜单,例

如(接上例):

JMenuItem mi1=new JMenuItem("New"); //创建new菜单项目

mi1.setActionCommand("New"); //设置菜单项mil 的命令字符串为New

JMenuItem mi2=new JMenuItem("Load");

JMenuItem mi3=new JMenuItem("Save");

JMenuItem mi4=new JMenuItem("Quit");

m1.add(mi1); //把菜单项mi1 加入到菜单m1 中

m1.add(mi2);

m1.add(mi3);

m1.add(mi4);

(4)将建成的菜单栏添加到框架等容器中

例如,前面的例子中的f.setJMenuBar(JMB);,即设置JFrame 对象f的菜单栏为JMB。

(5)香港服务器租用商提醒您将菜单项注册给动作事件的监听者ActionListener

例如:MenuListener myListener=new MenuListener( ); //创建监听对象

mi1.addActionListener(myListener); //为菜单项添加监听对象

其中MenuListener 为实现ActionListener 接口的类,在该类中重载actionPerformed 方法,

例如:

class MenuListener implements ActionListener

{ public void actionPerformed(ActionEvent e)

{ if (e.getActionCommand().equals("Quit"))

System.exit(0); //如果选择了Quit 菜单项,退出程序

}

}

(6)使用分隔线

如果希望在菜单项之间添加一条横向分隔线,以便将菜单项分成几组,则需要调用菜单

的方法addSeparator( )。例如:m1.addSeparator();。

(7)为菜单项定义访问键

除了可以单击鼠标选择菜单项外,还可以为每个菜单项定义一个键盘访问键,这样就可

以用键盘来选择菜单项了。访问键是一个字母,定义好了之后,按住Alt 键和该字母就可以

选择菜单中对应的菜单项。例如,mi1.setMnemonic(’F’);给mi1 菜单项设置了访问键F,当菜

单项在界面上可见时,可以在键盘上按下Alt 键不放,同时按F键运行对应的命令。

如果希望菜单还有子菜单,国外服务器租用商提醒您只需先建立带菜单项的菜单,再把该菜单像菜单项一样加入

到另一个菜单即可。

在Java 菜单中定义了方钮确认框选项JcheckBoxMenuItem能够选中和不选中,圆形确认

框选项JradioButtonMenuItem能选中和不选中(一个选中,其他变为不选中,具有排他性),

它们的构造方法和JMenuItem类似,只是多了一个是否选中的参数。对应地,菜单项引发的

事件是ItemEvent,这样需要利用addItemListener方法把菜单项注册给ItemListener类的对象,

并实现ItemListener 的itemStateChanged(ItemEvent e)方法。我们可以通过ItemEvent 对象的

getStateChange( )方法获取菜单项的状态(2 表示从选中到未选中,1 表示从未选中到选中)。

java菜单

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class a extends JFrame implements ActionListener

{

JMenuBar a=new JMenuBar();

JMenu a1=new JMenu("编辑(E)");

JMenu a2=new JMenu("查看(V)");

JMenu a3=new JMenu("帮助(H)");

JMenuItem a11=new JMenuItem("复制(C)",'C');

JMenuItem a12=new JMenuItem("粘贴(P)",'P');

JMenuItem a21=new JMenuItem("标准型(T)",'T');

JMenuItem a22=new JMenuItem("科学型(S)",'S');

JMenuItem a31=new JMenuItem("帮助主题(H)",'H');

public a()

{

super("菜单");

a1.setMnemonic('E');

a2.setMnemonic('V');

a3.setMnemonic('H');

a.add(a1);

a.add(a2);

a.add(a3);

a1.add(a11);

a1.add(a12);

a2.add(a21);

a2.add(a22);

a3.add(a31);

setJMenuBar(a);

a11.addActionListener(this);

a12.addActionListener(this);

a21.addActionListener(this);

a22.addActionListener(this);

a31.addActionListener(this);

}

public void actionPerformed(ActionEvent e)

{

JMenuItem select=(JMenuItem)e.getSource();

}

public static void main(String [] args)

{

a frame=new a();

frame.setSize(300,200);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

}

}

java 中关于菜单,菜单项,菜单条如何区分?

菜单条就是一个桌面程序上面那一排菜单的总的集合,比如文件、编辑、工具什么的那一排就是菜单条,其中的文件、帮助这些就是菜单,文件下面的新建、打开就是菜单项。

总的来说菜单项组成菜单,菜单的集合就是菜单条。

JAVA,如何实现点击不同菜单项后,面板显示不同内容用以实现不同功能?

需要给各个菜单项添加类似ActionListener的监听器,用于对鼠标动作的反应,具体请参看JAVA关于GUI部分的教程。

比如:jMenuItem1.addActionListener(itemHandler);

itemHandler是自己编写的一个监听器。

最好把JMenuItem弄成一个数组,这样省代码。

java 点击不同菜单怎样显示不同内容?

你预先用 Swing 做好几个 JPanel ,这几个 JPanel 分别对应你不同的菜单内容的,

然后,初始化的时候,把这几个 Jpanel 设置为隐藏,当点击菜单的时候才将相应的 JPanel 设置为可见,就可以实现这个功能了。

如何用JAVA来实现下拉菜单的功能

import java.awt.*;

import java.awt.event.*;

class xl Frame implements ItemListener //借口

{

static Choice chc=new Choice();//创建下拉框的对象

}

public static void main(String args[])

{

frm.setLayout(new FlowLayout());//创建布局格式

frm.setSize(200,200);//设置框架大小

frm.add(chc);//把下拉框组件加入到框架里面

chc.addItemListener(frm);//把chc设置为聆听者

chc.add('上海');

chc.add('北京');//在下拉框里面加入所需要的东西,例如上海,北京。

frm.setVisible(true);//窗体设为可视

}

//后面借着就是对应触发下拉框索要执行的。