首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

求大神帮忙,多谢啦

2013-12-15 
求大神帮忙,谢谢啦!我准备在用鼠标点击期刊登陆时弹出相应的对话框。下面是我的代码,点击期刊登陆时没反应,

求大神帮忙,谢谢啦!
求大神帮忙,多谢啦
我准备在用鼠标点击期刊登陆时弹出相应的对话框。下面是我的代码,点击期刊登陆时没反应,不知道为什么??求大神帮忙,多谢啦求大神帮忙,多谢啦


下面是为了方便大家运行调试的文本代码

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
///////////////////////////////
class Dialogs extends JDialog
{//制作对话框
 public Dialogs(JFrame parent)
 {
 super(parent,"My dialog",true);
 Container cp=getContentPane();
 cp.setLayout(new FlowLayout());
 cp.add(new JLabel("Here is my dialog"));
 JButton ok=new JButton("OK");
 ok.addActionListener(new ActionListener(){
 public void actionPerformed(ActionEvent e){
 dispose();
 }
 });
 cp.add(ok);
 setSize(500,500);
 }
}
////////////////////////////////////////////////
class WindowText extends JFrame// implements ActionListener
{//private Dialogs dlg=new Dialogs (null);
  private JFrame wd;
  JMenuBar menubar;//菜单条
  JMenu menu1,menu2,menu3;//菜单选项
Dialogs dlg=new Dialogs (null);
   WindowText()
   {
    init();
   }
   
  public void init()
   {
     wd=new JFrame("期刊管理系统");
     wd.setBounds(100,100,200,300);
      
      setDefaultCloseOperation(EXIT_ON_CLOSE);
    menubar=new JMenuBar();
    menu1=new JMenu("期刊登记");
    menu2=new JMenu("期刊查询");
    menu3=new JMenu("期刊借阅");
    
    menubar.add(menu1);
    menubar.add(menu2);
    menubar.add(menu3);
     wd.setJMenuBar(menubar);
     inirt();
     wd.setVisible(true);
    // myEvent();
}
public void inirt(){
  menu1.addActionListener(new ActionListener(){//这里增加事件
   public void actionPerformed(ActionEvent e){
    dlg.setVisible(true);
   }
  });
  
 }
 
public static void main(String[] args)
{

   
    new WindowText();
   
    }

 }














  //menu1
  //JButton button=new JButton("按钮");
  //menu1=new JMenu("期刊登记");
  //menu1.add(ON_UPDATE_COMMAND_UI);
  ///*menu1.addActionListener(new MouseListener(){
  //public void actionPerformed(MouseEvent event)
  //{
  //DialogPanel dialog=new DialogPanel();
//}
//});
//wd.add(button);
  //}*/
  // //jmt1.addActionListener(new MenuAction(this));
   
   
   
   
   
   
 /*class DialogPanel extends JPanel
{
JDialog dialog=new JDialog();
public DialogPanel()
{
//加入其它你想加的东西
dialog.add(this);
dialog.setSize(300,300);
dialog.setLocation(300,300);
dialog.setVisible(true);
}
}*/

  
  
 
 
 
   


   
[解决办法]
lz喜欢桌面应用吗,还是只是初学swing呢,我也是刚从初级走过来的,我看了lz的代码,发现了问题在哪儿了:
1.
menu1.addActionListener(new ActionListener() {// 这里增加事件
public void actionPerformed(ActionEvent e) {
dlg.show();
}
});

这个是给按钮等组件添加点击时间的,而menu1是一个菜单,这个好像是没有任何效果的。
2.菜单有专门的菜单事件,你不妨去探索一下在菜单事件中调用dlg.show();

希望lz自己先去实践,然后看下面代码,参考代码如下:
menu1.addMenuListener(new MenuListener() {

@Override
public void menuSelected(MenuEvent e) {


dlg.show();
}

@Override
public void menuDeselected(MenuEvent e) {

}

@Override
public void menuCanceled(MenuEvent e) {

}
});



祝学习进步~
[解决办法]
public void actionPerformed(ActionEvent e) {
JDialog log = new JDialog(this, true);
log.setVisible(true);
}

这样才是模式窗口吧

热点排行