📄 modipaneevent.java
字号:
package client.chat.chatpane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.HashMap;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import utils.InfoPacket;
import utils.StaticUtils;
/**
* 修改用户信息对话框中按钮的监听事件
* @author 洪景泉
*
*/
public class ModiPaneEvent implements ActionListener{
private ModiPane mp=null;
private OutputStream os;
private InputStream is;
public ModiPaneEvent(ModiPane mp,InputStream is,OutputStream os) {
this.mp=mp;
this.is=is;
this.os=os;
}
public void actionPerformed(ActionEvent e) {
JButton btn=(JButton)e.getSource();
String str=btn.getActionCommand();
//也可以直接用e.getActionCommand();
if(str.equals("cancle")){
mp.dispose();
}else if(str.equals("save")){
//
//String
String userID=mp.getIDText().getText().trim();
String userNickName=mp.getNickNameText().getText().trim();
String userPassword=new String(mp.getPwdText2().getPassword()).trim();
String userAge=mp.getAgeText().getText().trim();
String userTelephone=mp.getPhoneText().getText().trim();
String userDpm=mp.getDepartmentCom().getSelectedItem().toString().trim();
String userAddress=mp.getAddressText().getText().trim();
String userIcon=String.valueOf(mp.getIconCom().getSelectedIndex()+1);
if (mp.getPwdText1().getPassword().length>0 &&(!(new String(mp.getPwdText1().getPassword()).equals(StaticUtils.currentUser.get("userPassword"))))){
JOptionPane.showMessageDialog(mp, "请输入正确的旧密码");
mp.getPwdText1().setText("");
mp.getPwdText1().requestFocus();
//System.out.println("sava");
return;
}
if(mp.getPwdText1().getPassword().length>0){
if(mp.getPwdText2().getPassword().length==0 || mp.getPwdText3().getPassword().length==0){
JOptionPane.showMessageDialog(mp, "请输入新密码");
mp.getPwdText2().setText("");
mp.getPwdText3().setText("");
mp.getPwdText2().requestFocus();
return;
}
if(!(new String(mp.getPwdText2().getPassword()).equals(new String(mp.getPwdText3().getPassword())))){
JOptionPane.showMessageDialog(mp, "你两次输入的新密码不一样!");
mp.getPwdText2().setText("");
mp.getPwdText3().setText("");
mp.getPwdText2().requestFocus();
return;
}
}else{
if(mp.getPwdText2().getPassword().length>0 || mp.getPwdText3().getPassword().length>0){
JOptionPane.showMessageDialog(mp, "请先输入旧密码");
mp.getPwdText1().setText("");
mp.getPwdText1().requestFocus();
return;
}
}
if (mp.getDepartmentCom().getSelectedItem().toString().trim().equals("")) {
JOptionPane.showMessageDialog(mp, "请选择所在部门!");
mp.getDepartmentCom().requestFocus();
return;
}
if(!mp.getAgeText().getText().trim().equals("")){
if(mp.getAgeText().getText().trim().matches("\\D*")){
//System.out.println(dialog.getAgeText().getText().matches("\\D*"));
JOptionPane.showMessageDialog(mp,"年龄只能是数字!");
mp.getAgeText().setText("");
mp.getAgeText().requestFocus();
return;
}
else{
int age =Integer.parseInt(mp.getAgeText().getText());
//你输入的年龄错误,请重新输入
if(age<18||age>100){
JOptionPane.showMessageDialog(mp,"你输入的年龄只能在18-100岁之间!");
mp.getAgeText().setText("");
mp.getAgeText().requestFocus();
return;
}
}
}
if(mp.getPhoneText().getText().matches("\\D*")&&!(mp.getPhoneText().getText().trim().equals(""))){
JOptionPane.showMessageDialog(mp,"电话号码只能是数字!");
mp.getPhoneText().setText("");
mp.getPhoneText().requestFocus();
return;
}
//获取当前用户的相关信息
StaticUtils.currentUser.put("userID",userID);
StaticUtils.currentUser.put("userNickName",userNickName);
if(!(userPassword.equals(""))){
StaticUtils.currentUser.put("userPassword",userPassword);
}
StaticUtils.currentUser.put("userAge",userAge);
StaticUtils.currentUser.put("userTelephone",userTelephone);
StaticUtils.currentUser.put("userDpm",userDpm);
StaticUtils.currentUser.put("userAddress",userAddress);
StaticUtils.currentUser.put("userIcon",userIcon);
HashMap map=StaticUtils.currentUser;
String userInfo=map.get("userID")+","
+map.get("userNickName")+","
+map.get("userPassword")+","
+map.get("userAge")+","
+map.get("userTelephone")+","
+map.get("userDpm")+","
+map.get("userAddress")+","
+map.get("userIcon");
InfoPacket pack=new InfoPacket(InfoPacket.MODIINFO,userID,"",userInfo);
try {
os.write(pack.toByteArray());
} catch (IOException e1) {
e1.printStackTrace();
}
mp.dispose();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -