为什么我写的代码设置好了菜单功能却不能显现出菜单?

jojeylin 2008-03-11 07:32:07
为什么我写的代码设置好了菜单功能却不能显现出菜单?
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.sql.*;
import java.util.*;
import java.applet.*;

public class Merframe extends JFrame{//声明程序规范//
JMenu jmenu1=new JMenu();
JMenu jmenu2=new JMenu();
JMenu jmenu3=new JMenu();
JMenu jmenu4=new JMenu();
JMenu jmenu5=new JMenu();
JMenu jmenu6=new JMenu();
JMenuBar jmenubar1=new JMenuBar();
JMenuItem jmenuitem1=new JMenuItem();
JMenuItem jmenuitem2=new JMenuItem();
JMenuItem jmenuitem3=new JMenuItem();
JMenuItem jmenuitem4=new JMenuItem();
JMenuItem jmenuitem5=new JMenuItem();
JMenuItem jmenuitem6=new JMenuItem();
JMenuItem jmenuitem7=new JMenuItem();
JMenuItem jmenuitem8=new JMenuItem();
JMenuItem jmenuitem9=new JMenuItem();
JMenuItem jmenuitem10=new JMenuItem();
JMenuItem jmenuitem11=new JMenuItem();
JMenuItem jmenuitem12=new JMenuItem();
JMenuItem jmenuitem13=new JMenuItem();
JMenuItem jmenuitem14=new JMenuItem();
JMenuItem jmenuitem15=new JMenuItem();
JMenuItem jmenuitem16=new JMenuItem();
JMenuItem jmenuitem17=new JMenuItem();
JMenuItem jmenuitem18=new JMenuItem();
JMenuItem jmenuitem19=new JMenuItem();
JPanel jpanel1=new JPanel();
JList jlist1=new JList();
FlowLayout flowlayout1=new FlowLayout();
User_info userd;
public Merframe()//声明程序主体//
{

jpanel1.setLayout(flowlayout1);
this.setJMenuBar(jmenubar1);
jmenu1.setLabel("人员登记信息");

jmenu2.setLabel("药品管理信息");

jmenu3.setLabel("医疗&养老管理");

jmenu4.setLabel("导入数据");

jmenu5.setLabel("帮助");

jmenu6.setLabel("退出");

jmenuitem1.setLabel("病人信息登记");

jmenuitem2.setLabel("病人信息修改(查询)");

jmenuitem3.setLabel("病人信息删除");

jmenuitem4.setLabel("药品入库管理");

jmenuitem5.setLabel("药品出库管理");

jmenuitem6.setLabel("药品库存管理(查询)");

jmenuitem7.setLabel("管理员信息登记");

jmenuitem8.setLabel("管理员信息修改(查询)");

jmenuitem9.setLabel("管理员信息删除");

jmenuitem10.setLabel("医疗保险人员登记");

jmenuitem11.setLabel("医疗保险人员修改(查询)");

jmenuitem12.setLabel("医疗保险人员删除");

jmenuitem13.setLabel("养老保险人员登记");

jmenuitem14.setLabel("养老保险人员修改(查询)");

jmenuitem15.setLabel("deloldinfo");

jmenuitem16.setLabel("import EXCEL info");

jmenuitem17.setLabel("import ACCESS info");

jmenuitem18.setLabel("help");

jmenuitem19.setLabel("exit");

jmenubar1.add(jmenu1);//加入管理信息//
jmenubar1.add(jmenu2);
jmenubar1.add(jmenu3);
jmenubar1.add(jmenu4);
jmenubar1.add(jmenu5);
jmenubar1.add(jmenu6);
jmenu1.add(jmenuitem1);
jmenu1.add(jmenuitem2);
jmenu1.add(jmenuitem3);
jmenu1.add(jmenuitem7);
jmenu1.add(jmenuitem8);
jmenu1.add(jmenuitem9);
jmenu2.add(jmenuitem4);
jmenu2.add(jmenuitem5);
jmenu2.add(jmenuitem6);
jmenu3.add(jmenuitem10);
jmenu3.add(jmenuitem11);
jmenu3.add(jmenuitem12);
jmenu3.add(jmenuitem13);
jmenu3.add(jmenuitem14);
jmenu3.add(jmenuitem15);
jmenu4.add(jmenuitem16);
jmenu4.add(jmenuitem17);
jmenu5.add(jmenuitem18);
jmenu6.add(jmenuitem19);
jpanel1.add(jmenubar1);
jpanel1.add(jmenu1);
jpanel1.add(jmenu2);
jpanel1.add(jmenu3);
jpanel1.add(jmenu4);
jpanel1.add(jmenu5);
jpanel1.add(jmenu6);

jmenu1.setVisible(true);

jmenu2.setVisible(true);

jmenu3.setVisible(true);

jmenu4.setVisible(true);

jmenu5.setVisible(true);

jmenu6.setVisible(true);

jmenuitem1.setVisible(true);

jmenuitem2.setVisible(true);

jmenuitem3.setVisible(true);

jmenuitem4.setVisible(true);

jmenuitem5.setVisible(true);

jmenuitem6.setVisible(true);

jmenuitem7.setVisible(true);

jmenuitem8.setVisible(true);

jmenuitem9.setVisible(true);

jmenuitem10.setVisible(true);

jmenuitem11.setVisible(true);

jmenuitem12.setVisible(true);

jmenuitem13.setVisible(true);

jmenuitem14.setVisible(true);

jmenuitem15.setVisible(true);

jmenuitem16.setVisible(true);

jmenuitem17.setVisible(true);

jmenuitem18.setVisible(true);

jmenuitem19.setVisible(true);

jmenuitem1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
userd=new User_info();

}
});
jmenuitem2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
userd=new User_info();

}
});



}

public static void main(String[] args)
{
Merframe merframe=new Merframe();
merframe.setVisible(true);
}
}

class User_info
{
}

...全文
138 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
365810247 2008-03-12
  • 打赏
  • 举报
回复

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.SwingConstants;

public class Merframe extends JFrame {// 声明程序规范

JMenu[] jmenus = new JMenu[] { new JMenu("人员登记信息"), new JMenu("药品管理信息"),
new JMenu("医疗&养老管理"), new JMenu("导入数据"), new JMenu("帮助"),
new JMenu("退出") };

JMenuBar jmenubar1 = new JMenuBar();

JMenuItem[] jmenuItem1 = new JMenuItem[] { new JMenuItem("病人信息登记"),
new JMenuItem("病人信息修改(查询)"), new JMenuItem("病人信息删除"),
new JMenuItem("管理员信息登记"), new JMenuItem("管理员信息修改(查询)"),
new JMenuItem("管理员信息删除") };

JMenuItem[] jmenuItem2 = new JMenuItem[] { new JMenuItem("药品入库管理"),
new JMenuItem("药品出库管理"), new JMenuItem("药品库存管理(查询)") };

JMenuItem[] jmenuItem3 = new JMenuItem[] { new JMenuItem("医疗保险人员登记"),
new JMenuItem("医疗保险人员修改(查询)"), new JMenuItem("医疗保险人员删除"),
new JMenuItem("养老保险人员登记"), new JMenuItem("养老保险人员修改(查询)"),
new JMenuItem("deloldinfo") };

JMenuItem[] jmenuItem4 = new JMenuItem[] {
new JMenuItem("import EXCEL info"),
new JMenuItem("import ACCESS info") };

JMenuItem[] jmenuItem5 = new JMenuItem[] { new JMenuItem("help") };
JMenuItem[] jmenuItem6 = new JMenuItem[] { new JMenuItem("exit") };

JList jlist1 = new JList();
FlowLayout flowlayout1 = new FlowLayout(SwingConstants.LEFT);
User_info userd;

List<JMenuItem[]> jmenuItemList = new ArrayList<JMenuItem[]>();

public Merframe()// 声明程序主体//
{

jmenuItemList.add(jmenuItem1);
jmenuItemList.add(jmenuItem2);
jmenuItemList.add(jmenuItem3);
jmenuItemList.add(jmenuItem4);
jmenuItemList.add(jmenuItem5);
jmenuItemList.add(jmenuItem6);

setLayout(flowlayout1);
int i = 0;
JMenuItem[] jMenuItems;
for (JMenu jmenu : jmenus) {
jMenuItems = jmenuItemList.get(i);
for (JMenuItem jmenuItem : jMenuItems) {
jmenu.add(jmenuItem);
}
jmenubar1.add(jmenu);
i++;
}

setJMenuBar(jmenubar1);

jmenuItem1[0].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
userd = new User_info();
}
});
jmenuItem1[1].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
userd = new User_info();
}
});

}

public static void main(String[] args) {
Merframe merframe = new Merframe();
merframe.setBounds(200, 100, 800, 600);
merframe.setVisible(true);
}
}

class User_info {
}

Ant 2008-03-12
  • 打赏
  • 举报
回复
似乎JMenuBar还没有加载Menu就已经被JFrame加载了,顺序有点奇怪哦,呵呵!
jojeylin 2008-03-12
  • 打赏
  • 举报
回复
JMenu jmenu : jmenus中的:这个项是什么意思啊?是将数组转换成非数组么?还是?还有List<JMenuItem[]> jmenuItemList = new ArrayList<JMenuItem[]>();

这又是什么意思啊?既然用了LIST接口为什么还要用个ArrayList???不太明白
xjsuper2008 2008-03-12
  • 打赏
  • 举报
回复
楼主的代码让地球人崩溃!!!!
jojeylin 2008-03-11
  • 打赏
  • 举报
回复
有人知道为什么设置了菜单的VISIBLE的值为TRUE但在运行的时候菜单或菜单项还是无法显示,显示的是一个空的框架,没有菜单也没有菜单项,更没有菜单栏是怎么回事吖?
jojeylin 2008-03-11
  • 打赏
  • 举报
回复
还有就是不用JPANEL代码好象不能设置布局啊
jojeylin 2008-03-11
  • 打赏
  • 举报
回复
可没有VISIBLE代码和JPANEL代码看不到菜单啊
zhsjun 2008-03-11
  • 打赏
  • 举报
回复
还有那些setVisible多余
zhsjun 2008-03-11
  • 打赏
  • 举报
回复
多余代码也太多,jpanel应该去掉,或者不要把菜单增加到jpanel
365810247 2008-03-11
  • 打赏
  • 举报
回复
jpanel1.add(jmenubar1);
//jpanel1.add(jmenu1);
//jpanel1.add(jmenu2);
//jpanel1.add(jmenu3);
//jpanel1.add(jmenu4);
//jpanel1.add(jmenu5);
//jpanel1.add(jmenu6);

JPanel contentPane=(JPanel) this.getContentPane();
contentPane.add(this.jpanel1); //修改部分
zhsjun 2008-03-11
  • 打赏
  • 举报
回复
给出窗口大小
cydp007 2008-03-11
  • 打赏
  • 举报
回复
这段代码让我崩溃..

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧