JFrame的setMenuBar和setJMenuBar可以同时使用

174 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

@TOC

前言

JFrame直接继承自Frame, 也继承了setMenuBar(MenuBar menu)方法, 没有Override JFrame扩展了setJMenuBar(JMenuBar jmenu)方法 测试发现两者可以共存

测试代码

package jframe;

import java.awt.*;

import javax.swing.*;

public class JFrameMenubarJMenubar共存2205220821 {
	
	public  static void main(String...arguments) {
		
		JFrame jframe = new JFrame("JMenuBar和MenuBar能不能共存?");
		
		MenuBar  menubar  = new MenuBar();  jframe.setMenuBar (menubar);
		JMenuBar jmenubar = new JMenuBar(); jframe.setJMenuBar(jmenubar);
		
		for(int x=0; x<6; x++) {
			Menu  menu  = new Menu ("Menu-"+x);  menubar.add(menu);
			JMenu jmenu = new JMenu("JMenu-"+x); jmenubar.add(jmenu);
			for(int y=0; y<6; y++) {
				Menu  menu1  = new Menu ("Menu-" +x+"-"+y); menu .add(menu1);
				JMenu jmenu1 = new JMenu("JMenu-"+x+"-"+y); jmenu.add(jmenu1);
				for(int z=0; z<6; z++) {
					MenuItem  menuitem  = new MenuItem ("MenuItem-" +x+"-"+y+"-"+z); menu1 .add(menuitem);
					JMenuItem jmenuitem = new JMenuItem("JMenuItem-"+x+"-"+y+"-"+z); jmenu1.add(jmenuitem);
				}
			}
		}
		
		jframe.setBounds(100,100,600,400);
		jframe.setVisible(true);
		
	}

}

在这里插入图片描述 在这里插入图片描述