日期:2014-05-20  浏览次数:20783 次

java 编程,如何在一个在一个窗体类得到自己的句柄
做一个C/S的应用程序
在运行类 Run 中间创建一个 LoginFrame 类的对象loginFrame 验证密码成功后,登录到主窗体
如何实现登录到主窗体的同时,销毁登录窗口

public class Run() {
  LoginFrame loginFrame = new LoginFrame();
  loginFrame.setVisible = true;
}

public class LoginFrame extends JFrame() {
  init(); //初始化函数方法,在此省略
   
  public void btnLoginIn_mouseClicked(MouseEvent e) {
//检查数据
String sql = this.getUserInfo();
if (sql == null) {
return;
}
if (this.checkUserInfo(sql) == false) {
return;
}
//查找成功,登录,创建MainFrame
MainFrame frame = new MainFrame();
ToolKits.showCenterFrame(frame);
}
}

public class MainFrame extends JFrame() {

}

------解决方案--------------------
frame的对象.setVisible(false);就是关闭了。比如在run方法里
LoginFrame loginFrame = new LoginFrame();
 loginFrame.setVisible(true);
this.serVisiable(false);
------解决方案--------------------
从设计上讲,登录应该是一个Dialog而不是Frame,如果你坚持这样做,那么可以让登录窗口隐藏掉,this.setVisible(false);但是并不释放资源占用
Java code
public class LoginFrame extends JFrame() {
  init(); //初始化函数方法,在此省略
    
  public void btnLoginIn_mouseClicked(MouseEvent e) {
//检查数据
String sql = this.getUserInfo();
if (sql == null) {
return;
}
if (this.checkUserInfo(sql) == false) {
return;
}
this.setVisible(false);
//查找成功,登录,创建MainFrame
MainFrame frame = new MainFrame();
ToolKits.showCenterFrame(frame);
}
}

------解决方案--------------------
类名.this
就是自己的引用
------解决方案--------------------
探讨

从设计上讲,登录应该是一个Dialog而不是Frame,如果你坚持这样做,那么可以让登录窗口隐藏掉,this.setVisible(false);但是并不释放资源占用Java code
public class LoginFrame extends JFrame() {
init(); //初始化函数方法,在此省略

public void btnLoginIn_mouseCl……