当前位置: 代码迷 >> Eclipse >> 写学生成绩管理系统遇到两个有关问题,求帮忙
  详细解决方案

写学生成绩管理系统遇到两个有关问题,求帮忙

热度:55   发布时间:2016-04-23 01:17:24.0
写学生成绩管理系统遇到两个问题,求帮忙
小弟最近刚看完java视频,现在在用Eclipse写学生成绩管理系统,遇到两个问题。
第一个是:我写了一个用户登录界面,当我登陆的时候会弹出另一个窗口,就是系统使用界面,如果我关掉系统使用界面,结果用户登陆界面也关了。如果我在系统使用界面再点击使用某个功能弹出另一个窗口,而我又关了新弹出来的窗口,那系统使用对话框会关掉,登陆对话框也会一起关掉。这是怎么回事?


登陆按钮的事件代码:

package ManageSystem;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class SystemFrame extends JFrame{
public SystemFrame(String s){
super(s);
JButton btnInput=new JButton("1  输入学生成绩");
JButton btnCorrect=new JButton("2   修改学生成绩");
JButton btnDelete=new JButton("3  删除学生成绩");
JButton btnAdd=new JButton("4  添加学生成绩");
JButton btnSearch=new JButton("5  查询学生成绩");
JButton btnWatch=new JButton("6  浏览学生成绩");
JLabel lbl=new JLabel("南京晓庄学院  学生成绩管理系统  使用");
JPanel p1=new JPanel();
JPanel p2=new JPanel();

p1.add(lbl);
p1.setLayout(new FlowLayout());

p2.add(btnInput); p2.add(btnCorrect); p2.add(btnDelete);
p2.add(btnAdd); p2.add(btnSearch); p2.add(btnWatch);
p2.setLayout(new GridLayout(6,1));

this.add(p1,BorderLayout.NORTH);
this.add(p2,BorderLayout.SOUTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setBounds(200,200,250,400);
this.pack();

btnInput.addActionListener(new InputListener(this));
}
}



package ManageSystem;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Listener implements ActionListener{
MSFrame tf=null;
public Listener(MSFrame tf){
this.tf=tf;
}
@Override
public void actionPerformed(ActionEvent e) {
String User="123";
String Password="123";
String getUser=tf.tfUser.getText();
String getPassword=tf.tfPassword.getText();
if(User.equals(getUser)&&Password.equals(getPassword)){
SystemFrame system=new SystemFrame("学生成绩管理系统  使用");
system.setVisible(true);
}
else{
JFrame f=new JFrame("Error");
JLabel error=new JLabel("对不起,您输入的用户名和密码错误");
f.add(error);
f.setBounds(200,200,400,90);
f.setBackground(Color.RED);
f.setLayout(new FlowLayout());
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
}


我的问题就是我的对话框是不能单独控制的,关掉一个就全部都关掉了。
  相关解决方案