永发信息网

Java 程序运行没结果?

答案:4  悬赏:80  手机版
解决时间 2021-05-24 10:17
  • 提问者网友:抽煙菂渘情少年
  • 2021-05-23 14:03

以下程序编译没问题,可运行却没结果,请大侠帮忙?(问题到底出在哪儿?)

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
class MenuDemo extends JFrame implements ActionListener {
JMenuBar myMenuBar=new JMenuBar();
JMenu menu1,menu2,menu3,menu4,menu5;
JMenuItem menuItem11,menuItem12,menuItem13,menuItem14;
JCheckBoxMenuItem menuItem21,menuItem22;
JButton b1,b2,b3;
MenuDemo() {
getContentPane().setLayout(new BorderLayout()); //设置边界布局
createMenu(); //创建菜单
setTitle("菜单演示");
setSize(400,400);
setVisible(true);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) { //关闭窗口
dispose();
System.exit(0);
}
});
}
void createMenu() {
menu1=new JMenu("系统管理(S)");
menu1.setMnemonic('S'); //设置热键
menu2=new JMenu("视图(V)");
menu2.setMnemonic('V'); //设置热键
menuItem11=new JMenuItem("用户管理(U)",
new ImageIcon("C:\\Documents and Settings\\Administrator\\My Documents\\Tencent Files\\453737451\\Image\\$MTFLH}6D44JDMK{1L8P)F2.GIF"));
//建立菜单项的同时加入图标
menuItem11.setMnemonic('U');
menuItem11.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U,java.awt.event.InputEvent.CTRL_MASK));

menuItem12=new JMenuItem("密码设置(P)");
menuItem12.setIcon(new ImageIcon("C:\\Documents and Settings\\Administrator\\My Documents\\Tencent Files\\453737451\\Image\\%I@9572$H(`X2@`I}}EY3I9.gif"));
//建立完菜单项后设置图标
menuItem12.setMnemonic('P');
menuItem12.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,java.awt.event.InputEvent.CTRL_MASK));

menuItem13=new JMenuItem("退出(E)");
menu1.setMnemonic('E');

menu1.add(menuItem11);
menu1.add(menuItem12);
menu1.addSeparator(); //添加分隔条
menu1.add(menuItem13);

menuItem21=new JCheckBoxMenuItem("显示工具栏",true); //复选菜单项
menuItem22=new JCheckBoxMenuItem("显示提示文字",true);
menu2.add(menuItem21);
menu2.add(menuItem22);

myMenuBar.add(menu1);
myMenuBar.add(menu2);
setJMenuBar(myMenuBar); //将菜单添加到窗体
setIconImage(new ImageIcon("C:\\Documents and Settings\\Administrator\\My Documents\\Tencent Files\\453737451\\Image\\%I@9572$H(`X2@`I}}EY3I9.gif").getImage()); //设置窗口图标
menuItem11.addActionListener(this);
menuItem12.addActionListener(this);
menuItem13.addActionListener(this);
menuItem21.addActionListener(this);
menuItem22.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==menuItem11){
; //此处调用用户管理程序
}
else if(e.getSource()==menuItem12) {
; //此处调用密码设置程序
}
else if(e.getSource()==menuItem13) {
dispose();
System.exit(0);
}
else if(e.getSource()==menuItem21) {
if(menuItem21.getState()) {
; //使用工具栏显示 tb.setVisible(true);
}
else {
; //隐藏工具栏 tb.setVisible(false);
this.invalidate();
}
}
}
public static void main(String[] args) {
JFrame.setDefaultLookAndFeelDecorated(true);
Font myFont=new Font("JFrame",Font.PLAIN,14);
Enumeration keys=UIManager.getLookAndFeelDefaults().keys();
while(keys.hasMoreElements()) {
Object myKey=keys.nextElement();
if(UIManager.get(myKey) instanceof Font) UIManager.put(myKey,myFont);
}
MenuDemo menuDemo=new MenuDemo();
}
}

最佳答案
  • 五星知识达人网友:人间朝暮
  • 2021-05-23 14:26
你的菜单选项添加图标的时候图片选得不正确(图片太大,显示不出来),换个小图片,最好不要是qq表情,换成其他jpg格式或是gif格式的图片就OK了!
全部回答
  • 1楼网友:舍身薄凉客
  • 2021-05-23 16:42

没有仔细看代码,不过没有看到 窗体的 show() 方法啊,

menuDemo.show()

  • 2楼网友:一秋
  • 2021-05-23 16:33

主类要定义为public 类型

public class MenuDemo

  • 3楼网友:舊物识亽
  • 2021-05-23 15:52

不知道您问的运行没结果是什么意思。我试运行了您的程序,可以显示您的MenuDemo窗体以及Menu的细节。只是您的actionPerformed程序段除了“退出”之外几乎都没有Implementation(或者被Commented Out),所以除了退出之外不会对其他任何选项作出反应。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯