java 如何用用数组设置一个窗体的三级菜单?
这不简单吗,直接循环加上去就可以了。
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class List extends JFrame{
public List(){
initialization();
setTitle(“三级菜单”);
setBounds(300,300,400,300);
setLayout(null);
Container c=getContentPane();
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public void initialization(){
JMenu jmenuTwo=null;
String[] menubar={“编辑”,”帮助”};
String[][] submenu={{“复制”,”粘贴”,””,”历史记录”},{“关于三级菜单”}};
String[] threemenu={“撤消”,”恢复”};
JMenuBar jmenubar=new JMenuBar();//创建菜单栏
for(int i=0;imenubar.length;i++){
JMenu jmenu=new JMenu(menubar[i]);
jmenubar.add(jmenu);
for(int j=0;jsubmenu[i].length;j++){
if(“”.equals(submenu[i][j])){
jmenu.addSeparator();//添加一条横线
}else{
jmenuTwo=new JMenu(submenu[i][j]);
jmenu.add(jmenuTwo);
if(j2i==0){
for(int k=0;kthreemenu.length;k++){
JMenuItem menu3=new JMenuItem(threemenu[k]);
jmenuTwo.add(menu3);
}
}
}
}
this.setJMenuBar(jmenubar);//JFrame加菜单栏时用setJmenuBar(),不用add /
}
}
public static void main(String[] args){
new List();
}
}
Java中1、 创建一个Jframe窗口,在其中添加“文件”和“帮助”两个菜单的代码?急啊 谢谢
private static final long serialVersionUID = 1L;public void lauchFrame() {this.setSize(250, 300);this.setLocation(400, 100);MenuBar menuBar = new MenuBar();Menu menu = new Menu();menu.setLabel(“菜单”);MenuItem file = new MenuItem();MenuItem help = new MenuItem();file.setLabel(“文件”);help.setLabel(“帮助”);menu.add(file);menu.add(help);menuBar.add(menu);setMenuBar(menuBar);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});this.setBackground(Color.DARK_GRAY);this.setVisible(true);new TestFrame().lauchFrame();}}不好意思,搞成了Frame的实现了,你将Frame换成JFrame就差不多行了。
如何给Java窗体添加菜单栏
以windows系统中的记事本为例,菜单栏中的【文件】,【编辑】等全部叫一个菜单条;在Java中用JMenuBar表示;
菜单条中每一个具体的项叫做一个菜单,在Java中用JMenu表示;
菜单中的每一项叫做菜单项,Java中用JMenuItem表示;
我们在窗体中创建菜单栏,首先需要创建菜单条,先声明,然后在构造方法中初始化;代码为:JMenuBar bar = new JMenuBar();
然后创建菜单,也菜单条一样,也是先声明,再new;代码为:JMenu menu = new JMenu(“文件”);
接下来创建菜单项,和上面的一样,先声明,再new;代码为:JMenuItem item = new JMenuItem(“新建”);
创建好每一个部分之后,我们需要将菜单项添加到菜单中,然后将菜单添加到菜单条中;代码为:
menu.add(item);
bar.add(menu);
然后将整个菜单条添加到窗体中,代码为:
this.setJMenuBar(bar);
这样就可以实现在窗体中添加菜单条了,看一下效果吧。
java添加菜单条和按钮
试试这样行不?
public class Mazelp {/*extends JFrame*/ //implements ActionListener{
private static final int wid = 10;
private static final int hei = 10;
JFrame jf;
JButton jb1,jb2;
JButton jb[];
JPanel p1,p2;
private Stack stack = new Stack();//Stack 类表示后进先出(LIFO)的对象堆栈。
MenuBar menu;
Menu file;
MenuItem closeMenu;
public Mazelp() {
jf=new JFrame(“迷宫”);//申请内存空间设置标题
jf.setBounds(300,240,500,500); //调整迷宫出现的位置(300,240)及大小(500,500)
jf.setResizable(false);//窗体不可拉伸
menu = new MenuBar();//设置菜单条
file = new Menu(“文件”);//设置菜单栏
closeMenu = new MenuItem(“关闭”);//设置菜单项
//closeMenu.addActionListener(this);//添加监听对菜单项
p1=new JPanel();
//jf.add(menu);
jf.setMenuBar(menu);
menu.add(file);//将菜单栏添加到菜单条上
file.add(closeMenu);//将菜单项添加到菜单栏
jf.getContentPane().add(p1);
p1.setLayout(new GridLayout(10,10)); //p1用网格布局,10行10列
jb=new JButton[100];//作为迷宫的墙和路
for(int i=0;ijb.length;i++){
jb[i]=new JButton(Integer.toString(i));//创建按键的名字,Integer型的名字为i的字符串
if((i=0i=9)||(i=90i=99)||i%10==0||i%10==9||i==13||i==17||i==23||i==27||i==35||i==36||i==42||i==43||i==44||i==54||i==62||i==66||i==72||i==73||i==74||i==76||i==77||i==81){
jb[i].setBackground(Color.red);//将墙涂色
}
else {
jb[i].setBackground(Color.yellow);
}
jb[i].setSize(10,10);
p1.add(jb[i]);
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE); //声明点“X”图标后结束窗体所在的应用程序
jf.setVisible(true); //表明以上创建的所有窗体、按键等组件都是可见
}
}