java实现迅雷登录成功后刷新主界面,并传递参数给主界面功能

java swing实现迅雷登录成功后刷新主界面,并传递参数给主界面功能

迅雷实现的功能如下图所示
登陆后登陆前
同一个界面,只是相当于对其进行了刷新。

开始做这个的时候实在找不到办法,开始还想着把登录类代码放到主界面中,互相之间能够调用,但我不想那样。于是就陷入了困难之中,不知道如何得出登陆成功这个标志,因此也就是没办法关闭主界面,在登录类不可能关闭主界面,并且也不能把参数传递到主界面。思考了很久很久,最后在自学完线程后,发现可以登陆成功后先关闭当前登陆页面,在获取当前线程后,关闭他,在对主界面实例化就可以解决这个问题了。
要想实现这个功能就要采用多线程
主界面中调用登陆界面具体实现在下面

实现如下

主界面按钮监听代码
button.addActionListener(e->{
			if(mainface.username==null)//判断是否登陆过,没登陆过就说明参数没有被复制
			{
				new loginface();//登陆界面的类实例化
			}
			else
				JOptionPane.showMessageDialog(null, "你已经登陆过");
		});
登陆界面中登陆按钮监听
but1.addActionListener(e->{
					String accountT = text1.getText().trim();
					String namesT = new String(text2.getPassword()).trim();
					try {
						connection(); 		//加载数据库连接类,连接数据库;
						boolean com = compareWithSql(accountT,namesT,accountT);//函数为查询表,参数依次为账号,密码,手机号
						if(com==true)
							{
							JOptionPane.showMessageDialog(null, "登录成功");
							f.dispose();//关闭当前frame
							Thread thread=Thread.currentThread();//获取当前线程,也就是主界面线程
                        	thread.stop();//关闭线程
							mainface mf=new mainface();//重新加载主界面,开启新线程
							mf.username=accountT;//传递参数
							}
					} 
					catch (Exception e1) {
						e1.printStackTrace();
					}
		});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值