回 帖 发 新 帖 刷新版面

主题:[讨论]求教菜单问题!!

如果想在JMenuItem中再加一个弹出菜单,那该用什么类实现?

回复列表 (共5个回复)

沙发

Look at class JPopupMenu
[url]http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JPopupMenu.html[/url]

[url=http://java.sun.com/docs/books/tutorial/uiswing/examples/components/PopupMenuDemoProject/src/components/PopupMenuDemo.java]Sample code here, click me[/url]

板凳


我所说的弹出菜单不是右击鼠标后弹出的那个菜单,而是例如“记事本”中的“文件”
中有“新建”,“打开”,“设置”等等,接着在“设置”选项右边又可以有其它选项!

3 楼

Search submenu in the code.

It is in the sample code too.

Run the program, you will know it is there.

4 楼

Do something on the code, not just talking or reading!!!!

Your compiler is your best friend.

5 楼

你可以在JMenu1中再添加JMenu2,JMenu2就是JMenu1的子菜单。

import javax.swing.*;

class Demo extends JFrame
{
    public Demo()
    {
        JMenuBar mb = new JMenuBar();
        JMenu m1 = new JMenu("文件");
        JMenuItem mi1 = new JMenuItem("新建");
        JMenuItem mi2 = new JMenuItem("打开");
        JMenu m11 = new JMenu("设置");
        JMenuItem mi11 = new JMenuItem("字体");
        JMenuItem mi12 = new JMenuItem("段落");
        mb.add(m1);
        m1.add(mi1);
        m1.add(mi2);
        m1.add(m11);
        m11.add(mi11);
        m11.add(mi12);
        this.setJMenuBar(mb);
        this.setSize(400,300);
        this.setLocationRelativeTo(null);
        this.setVisible(true);
    }
    public static void main(String[]args)
    {
        new Demo();
    }
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册