一个奇怪的问题求助

zedk zedk 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我给按钮增加了点击事件,代码如下:
void btLog_actionPerformed(ActionEvent e) {
//验证输入的用户名密码
String MyNum = txtname.getText().trim();
String pwd = new String(txtpassword.getPassword());

try {
Config.setProfileString("Config.ini", "public", "LastNum", MyNum);
}
catch (Exception ex) {
ex.printStackTrace();
}
if (MyNum.equals("") && pwd.equals("")) {
lblInfo.setText("请输入用户名和密码!");
return;
}
else {
//登陆提示
lblInfo.setText("正在连接服务器....");
btLog btlog = new btLog(MyNum,pwd);
Thread login = new Thread(btlog);
login.start();
}
this.dispose();
}

其中btlog的代码如下
//增加方法继承线程
class btLog
implements Runnable {
boolean done = false;
String MyNum;
String pwd;
public btLog(String MyNum,String pwd){
this.MyNum = MyNum;
this.pwd = pwd;
}
public void run(){
while (!done) {

//验证密码并登陆
try { //定位WSDL文件的位置
OnLineLocator log = new OnLineLocator();
//获得Web Service的引用
OnLineSoap logs = (OnLineSoap) log.getOnLineSoap();

if (logs.userLogIn(MyNum, pwd)) {

MainFrame main = new MainFrame(MyNum);
main.setVisible(true);
done = true;
}
else {
lblInfo.setText("用户号或密码错误");
}
}
catch (Exception ex) {
lblInfo.setText("网络连接失败");
ex.fillInStackTrace();
}

}
}
}
问题是为什么我的程序使用了线程,界面还是处于锁死的状态?
lblInfo.setText("正在连接服务器....");
这句没有执行。
...全文

相关推荐

评论 9
收藏 已收藏
分享
返回顶部
zedk
Java SE 62,621 成员 307,251 内容