6.面向对象程序设计(2)
view包
1 package view; 2 3 import java.awt.event.MouseAdapter; 4 import java.awt.event.MouseEvent; 5 6 import javax.swing.ImageIcon; 7 import javax.swing.JFrame; 8 import javax.swing.JLabel; 9 10 @SuppressWarnings("serial") 11 public class QqClientZiliao extends JFrame { 12 13 static JFrame qqClientZiliao; 14 JLabel ziliaoJLabel; 15 16 public QqClientZiliao() { 17 qqClientZiliao = new JFrame(); 18 ziliaoJLabel = new JLabel(new ImageIcon("image/main/ziliao.png")); 19 // 窗口 20 qqClientZiliao.setUndecorated(true); 21 // qqClientZiliao.setVisible(true); 22 qqClientZiliao.setAlwaysOnTop(true); 23 qqClientZiliao.setBounds(769, 55, 275, 313); 24 qqClientZiliao.setResizable(false); 25 qqClientZiliao.setLayout(null); 26 qqClientZiliao.add(ziliaoJLabel); 27 ziliaoJLabel.setBounds(0, 0, 275, 313); 28 ziliaoJLabel.addMouseListener(new MouseAdapter() { 29 public void mouseExited(MouseEvent e) { 30 qqClientZiliao.setVisible(false); 31 } 32 }); 33 } 34 35 public static void main(String[] args) { 36 new QqClientZiliao(); 37 } 38 }
package view; import static org.junit.Assert.*; import org.junit.Test; public class QqClientLoginTest { @Test public void test() { fail("Not yet implemented"); } }
package view; /** * 登陆界面*/ import java.awt.Checkbox; import java.awt.CheckboxGroup; import java.awt.Color; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.io.DataOutputStream; import java.io.IOException; import java.net.Socket; import java.net.UnknownHostException; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.JTextField; import msg.MsgReg; import tools.RandomGetYanzheng; import tools.RoundButton; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientLogin extends JFrame implements MouseListener, MouseMotionListener { // private ClientConServer ccs = ClientConServer.getCcs(); // 定义 窗口 JFrame qqClientLoginJFrame; // Drag drag; // 定义 登陆界面 换肤界面 申请账号界面 JPanel qqClientLoginJPanel, changeSkinJPanel, applyJPanel; // 定义 登陆部分 // 定义 账号密码字体大小 Font mimaFont, zhanghaoInputFont, yanzhengInputFont; // 定义 账号输入区域 JTextField zhanghaoJTextField; // 定义 密码输入区域 JPasswordField mimaJPasswordField; // 定义 圆形按钮 申请 登陆 退出 说明 RoundButton applyRoundButton, loginRoundButton, exitRoundButton, shuomingRoundButton, locationRoundButton; // 申请面板部分 // 定义 姓名 输入字体 // Font nameFont; // 定义 姓名 申请密码 确认密码 性别 标签 JLabel nameJLabel, applyMimaJLabel, ifSureMimaJLabel, sexJLabel; // 定义 姓名输入组件 JTextField nameJTextField; // 定义 密码 确认密码输入组件 JPasswordField applyMimaJPasswordField, ifSureMimaJPasswordField; // 定义 密码与确认密码是否一致 红色提示 JLabel ifSureMimaTishiJLabel; // 定义 按钮 注册返回 头像 RoundButton zhuceJButton, zhuceBackJButton; JButton touxiang1, touxiang2, touxiang3, touxiang4, touxiang1_, touxiang2_, touxiang3_, touxiang4_, touxiang11, touxiang22, touxiang33, touxiang44; int nowTouxiangInt; // 定义 性别选择组件 CheckboxGroup sexCheckboxGroup; Checkbox man, woman; // 定义验证码 输入以及随机标签 JTextField yanzhengJTextField; JLabel yanzhengJLabel; JLabel yanzhengInputJLabel; // 定义验证码 随机字条 RandomGetYanzheng yanzhengmaRandon; String yanzhengmaString; // 登陆位置设定 JButton left1, right1, left2, right2, left3, right3, left4, right4; JButton left1_, right1_, left2_, right2_, left3_, right3_, left4_, right4_; // 背景部分 // 进入选择背景界面 按钮 JButton changeSkinLoginJButton, changeSkinLoginJButton1, changeSkinLoginJButton2, changeSkinLoginJButton3; // 选择处背景 JButton changeSkinJButton, changeSkinJButton1, changeSkinJButton2, changeSkinJButton3; // 带对号的选择处背景 JButton changeSkinJButton_, changeSkinJButton1_, changeSkinJButton2_, changeSkinJButton3_; // 主窗体背景 JLabel beijing1JLabel, beijing2JLabel, beijing3JLabel, beijing4JLabel, applyJLabel1, applyJLabel2, applyJLabel3, applyJLabel4; // 定义 当前背景参数 当前申请界面背景参数 String nowBeijingString, nowWeizhiString; boolean ifWeizhi; // 向服务器发送信息 // 发送性别部分 String sexString; MsgReg zhuceMr; DataOutputStream zhuceDous; Socket socket; byte[] zhuceB; // 发送 // 登陆部分 // 4种风格 JLabel JLabel skin1top; @SuppressWarnings("deprecation") public QqClientLogin() { // 初始化 字符串 当前背景 参数 nowBeijingString = "beijing1JLabel"; nowWeizhiString = "right"; nowTouxiangInt = 4; ifWeizhi = false; // applyJLabel1 = new JLabel(new ImageIcon("image/loginJiemian/1-5.jpg")); applyJLabel2 = new JLabel(new ImageIcon("image/loginJiemian/2-5.png")); applyJLabel3 = new JLabel(new ImageIcon("image/loginJiemian/3-5.jpg")); applyJLabel4 = new JLabel(new ImageIcon("image/loginJiemian/4-5.jpg")); // 初始化 窗口 qqClientLoginJFrame = new JFrame(); // 设为 final 内部类使用 窗口 final JFrame qqClientLoginJFrame = this; // 初始化 登陆面板 qqClientLoginJPanel = new JPanel(); // 初始化 换肤面板 changeSkinJPanel = new JPanel(); // 初始化申请面板 applyJPanel = new JPanel(); // 初始化 4种登陆界面 背景 beijing1JLabel = new JLabel(new ImageIcon("image/loginJiemian/1-1.jpg")); beijing2JLabel = new JLabel(new ImageIcon("image/loginJiemian/2-1.png")); beijing3JLabel = new JLabel(new ImageIcon("image/loginJiemian/3-1.jpg")); beijing4JLabel = new JLabel(new ImageIcon("image/loginJiemian/4-1.jpg")); // 初始化 4种进入换肤界面的按钮 changeSkinLoginJButton = new JButton(new ImageIcon( "image/loginJiemian/1-2.jpg")); changeSkinLoginJButton1 = new JButton(new ImageIcon( "image/loginJiemian/2-2.png")); changeSkinLoginJButton2 = new JButton(new ImageIcon( "image/loginJiemian/3-2.jpg")); changeSkinLoginJButton3 = new JButton(new ImageIcon( "image/loginJiemian/4-2.jpg")); // 初始化 4种 换肤面板的换肤按钮 changeSkinJButton = new JButton(new ImageIcon( "image/loginJiemian/1-3.jpg")); changeSkinJButton1 = new JButton(new ImageIcon( "image/loginJiemian/2-3.png")); changeSkinJButton2 = new JButton(new ImageIcon( "image/loginJiemian/3-3.jpg")); changeSkinJButton3 = new JButton(new ImageIcon( "image/loginJiemian/4-3.jpg")); // 初始化 4种 对勾换肤按钮 changeSkinJButton_ = new JButton(new ImageIcon( "image/loginJiemian/1-4.jpg")); changeSkinJButton1_ = new JButton(new ImageIcon( "image/loginJiemian/2-4.png")); changeSkinJButton2_ = new JButton(new ImageIcon( "image/loginJiemian/3-4.jpg")); changeSkinJButton3_ = new JButton(new ImageIcon( "image/loginJiemian/4-4.jpg")); // 初始化 登陆面板部分 zhanghaoJTextField = new JTextField("请输入账号:"); mimaJPasswordField = new JPasswordField(); applyRoundButton = new RoundButton("申请"); loginRoundButton = new RoundButton("登陆"); exitRoundButton = new RoundButton("退出"); shuomingRoundButton = new RoundButton("说明"); // 初始化 登陆位置 left1 = new JButton(new ImageIcon("image/loginJiemian/left_1.jpg")); right1 = new JButton(new ImageIcon("image/loginJiemian/right_1.jpg")); left2 = new JButton(new ImageIcon("image/loginJiemian/left_2.png")); right2 = new JButton(new ImageIcon("image/loginJiemian/right_2.png")); left3 = new JButton(new ImageIcon("image/loginJiemian/left_3.jpg")); right3 = new JButton(new ImageIcon("image/loginJiemian/right_3.jpg")); left4 = new JButton(new ImageIcon("image/loginJiemian/left_4.jpg")); right4 = new JButton(new ImageIcon("image/loginJiemian/right_4.jpg")); left1_ = new JButton(new ImageIcon("image/loginJiemian/left_11.jpg")); right1_ = new JButton(new ImageIcon("image/loginJiemian/right_11.jpg")); left2_ = new JButton(new ImageIcon("image/loginJiemian/left_22.png")); right2_ = new JButton(new ImageIcon("image/loginJiemian/right_22.png")); left3_ = new JButton(new ImageIcon("image/loginJiemian/left_33.jpg")); right3_ = new JButton(new ImageIcon("image/loginJiemian/right_33.jpg")); left4_ = new JButton(new ImageIcon("image/loginJiemian/left_44.jpg")); right4_ = new JButton(new ImageIcon("image/loginJiemian/right_44.jpg")); // 初始化 申请面板部分 locationRoundButton = new RoundButton("位置"); zhuceJButton = new RoundButton("注册"); zhuceBackJButton = new RoundButton("返回"); touxiang1 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-1.png")); touxiang2 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-2.png")); touxiang3 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-3.png")); touxiang4 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-4.png")); touxiang11 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-11.png")); touxiang22 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-22.png")); touxiang33 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-33.png")); touxiang44 = new JButton(new ImageIcon( "image/loginJiemian/touxiang-44.png")); touxiang1_ = new JButton(new ImageIcon( "image/loginJiemian/touxiang-1_.png")); touxiang2_ = new JButton(new ImageIcon( "image/loginJiemian/touxiang-2_.png")); touxiang3_ = new JButton(new ImageIcon( "image/loginJiemian/touxiang-3_.png")); touxiang4_ = new JButton(new ImageIcon( "image/loginJiemian/touxiang-4_.png")); nameJLabel = new JLabel("昵称"); applyMimaJLabel = new JLabel("密码"); ifSureMimaJLabel = new JLabel("确认密码"); ifSureMimaTishiJLabel = new JLabel("密码与确认密码不一致"); sexJLabel = new JLabel("性别"); nameJTextField = new JTextField(""); applyMimaJPasswordField = new JPasswordField(""); ifSureMimaJPasswordField = new JPasswordField(""); sexCheckboxGroup = new CheckboxGroup(); man = new Checkbox(); woman = new Checkbox(); yanzhengJTextField = new JTextField(""); yanzhengJLabel = new JLabel("验证码"); yanzhengmaRandon = new RandomGetYanzheng(); yanzhengmaString = yanzhengmaRandon.randomGetFiveBitYanzheng(); yanzhengInputJLabel = new JLabel(yanzhengmaString); mimaFont = new Font("SansSerif", Font.BOLD, 17); zhanghaoInputFont = new Font("SansSerif", Font.BOLD, 17); yanzhengInputFont = new Font("SansSerif", Font.BOLD, 25); try { socket = new Socket("localhost", 9999); } catch (UnknownHostException e3) { // TODO Auto-generated catch block e3.printStackTrace(); } catch (IOException e3) { // TODO Auto-generated catch block e3.printStackTrace(); } zhuceMr = new MsgReg(); // sexString = "男"; // 登陆部分 skin1top = new JLabel(new ImageIcon("image/listJiemian01/top.jpg")); // 窗口 qqClientLoginJFrame.setUndecorated(true); drag = new Drag(qqClientLoginJFrame); drag.setDragable(); qqClientLoginJFrame.setTitle("LZChat"); qqClientLoginJFrame.setSize(600, 270); qqClientLoginJFrame.setResizable(false); qqClientLoginJFrame.setLocationRelativeTo(null); qqClientLoginJFrame.setVisible(true); qqClientLoginJFrame.setLayout(null); qqClientLoginJFrame.setDefaultCloseOperation(EXIT_ON_CLOSE); // 登陆部分 zhanghaoJTextField.setFont(zhanghaoInputFont); zhanghaoJTextField.setBounds(275, 140, 150, 35); mimaJPasswordField.setFont(mimaFont); mimaJPasswordField.setBounds(275, 205, 150, 35); applyRoundButton.setBounds(210, 125, 60, 60); applyRoundButton.setBackground(Color.WHITE); loginRoundButton.setBounds(430, 125, 60, 60); loginRoundButton.setBackground(Color.WHITE); exitRoundButton.setBounds(430, 190, 60, 60); exitRoundButton.setBackground(Color.WHITE); locationRoundButton.setBounds(430, 55, 60, 60); locationRoundButton.setBackground(Color.WHITE); shuomingRoundButton.setBounds(210, 190, 60, 60); shuomingRoundButton.setBackground(Color.WHITE); // 主面板 qqClientLoginJPanel.setBounds(0, 0, 510, 272); qqClientLoginJPanel.setBackground(Color.YELLOW); qqClientLoginJPanel.setLayout(null); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJFrame.add(changeSkinLoginJButton); qqClientLoginJPanel.add(zhanghaoJTextField); qqClientLoginJPanel.add(mimaJPasswordField); qqClientLoginJPanel.add(applyRoundButton); qqClientLoginJPanel.add(loginRoundButton); qqClientLoginJPanel.add(exitRoundButton); qqClientLoginJPanel.add(locationRoundButton); qqClientLoginJPanel.add(shuomingRoundButton); qqClientLoginJPanel.add(beijing1JLabel); beijing1JLabel.setBounds(0, 0, 510, 272); // 按钮监听 说明 申请 登陆 退出 // 位置按钮监听部分 left1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(left1); qqClientLoginJFrame.add(left1_); left1_.setBounds(600, 0, 90, 135); qqClientLoginJFrame.remove(right1_); qqClientLoginJFrame.add(right1); right1.setBounds(600, 135, 90, 135); nowWeizhiString = "left"; qqClientLoginJFrame.repaint(); } }); left2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(left2); qqClientLoginJFrame.add(left2_); left2_.setBounds(600, 0, 90, 135); qqClientLoginJFrame.remove(right2_); qqClientLoginJFrame.add(right2); right2.setBounds(600, 135, 90, 135); nowWeizhiString = "left"; qqClientLoginJFrame.repaint(); } }); left3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(left3); qqClientLoginJFrame.add(left3_); left3_.setBounds(600, 0, 90, 135); qqClientLoginJFrame.remove(right3_); qqClientLoginJFrame.add(right3); right3.setBounds(600, 135, 90, 135); nowWeizhiString = "left"; qqClientLoginJFrame.repaint(); } }); left4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(left4); qqClientLoginJFrame.add(left4_); left4_.setBounds(600, 0, 90, 135); qqClientLoginJFrame.remove(right4_); qqClientLoginJFrame.add(right4); right4.setBounds(600, 135, 90, 135); nowWeizhiString = "left"; qqClientLoginJFrame.repaint(); } }); right1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(right1); qqClientLoginJFrame.add(right1_); right1_.setBounds(600, 135, 90, 135); qqClientLoginJFrame.remove(left1_); qqClientLoginJFrame.add(left1); left1.setBounds(600, 0, 90, 135); nowWeizhiString = "right"; qqClientLoginJFrame.repaint(); } }); right2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(right2); qqClientLoginJFrame.add(right2_); right2_.setBounds(600, 135, 90, 135); qqClientLoginJFrame.remove(left2_); qqClientLoginJFrame.add(left2); left2.setBounds(600, 0, 90, 135); nowWeizhiString = "right"; qqClientLoginJFrame.repaint(); } }); right3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(right3); qqClientLoginJFrame.add(right3_); right3_.setBounds(600, 135, 90, 135); qqClientLoginJFrame.remove(left3_); qqClientLoginJFrame.add(left3); left3.setBounds(600, 0, 90, 135); nowWeizhiString = "right"; qqClientLoginJFrame.repaint(); } }); right4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientLoginJFrame.remove(right4); qqClientLoginJFrame.add(right4_); right4_.setBounds(600, 135, 90, 135); qqClientLoginJFrame.remove(left4_); qqClientLoginJFrame.add(left4); left4.setBounds(600, 0, 90, 135); nowWeizhiString = "right"; qqClientLoginJFrame.repaint(); } }); // applyRoundButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { yanzhengmaRandon.changeGetFiveBitYanzheng(); applyJPanel.repaint(); System.out.println("申请按钮"); qqClientLoginJFrame.remove(qqClientLoginJPanel); qqClientLoginJFrame.add(applyJPanel); qqClientLoginJFrame.repaint(); } }); loginRoundButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("登陆按钮"); // if (ccs.ConServer()) { if (ccs.loginServer( Integer.valueOf(zhanghaoJTextField.getText()), mimaJPasswordField.getText())) { // 登陆不同风格界面部分 if (nowBeijingString == "beijing1JLabel") { if (nowWeizhiString == "right") { QqClientFriendsList01 qqClientFriendsList01 = new QqClientFriendsList01(); qqClientFriendsList01.setLocationRight(); ccs.addMsgListener(qqClientFriendsList01); // 左零右一 qqClientLoginJFrame.setVisible(false); } if (nowWeizhiString == "left") { QqClientFriendsList01 qqClientFriendsList01 = new QqClientFriendsList01(); qqClientFriendsList01.setLocationLeft(); ccs.addMsgListener(qqClientFriendsList01); qqClientLoginJFrame.setVisible(false); } } if (nowBeijingString == "beijing2JLabel") { if (nowWeizhiString == "right") { QqClientFriendsList02 qqClientFriendsList02 = new QqClientFriendsList02(); qqClientFriendsList02.setLocationRight(); ccs.addMsgListener(qqClientFriendsList02); // 左零右一 qqClientLoginJFrame.setVisible(false); } if (nowWeizhiString == "left") { QqClientFriendsList02 qqClientFriendsList02 = new QqClientFriendsList02(); qqClientFriendsList02.setLocationLeft(); ccs.addMsgListener(qqClientFriendsList02); qqClientLoginJFrame.setVisible(false); } } if (nowBeijingString == "beijing3JLabel") { if (nowWeizhiString == "right") { QqClientFriendsList03 qqClientFriendsList03 = new QqClientFriendsList03(); qqClientFriendsList03.setLocationRight(); ccs.addMsgListener(qqClientFriendsList03); // 左零右一 qqClientLoginJFrame.setVisible(false); } if (nowWeizhiString == "left") { QqClientFriendsList03 qqClientFriendsList03 = new QqClientFriendsList03(); qqClientFriendsList03.setLocationLeft(); ccs.addMsgListener(qqClientFriendsList03); qqClientLoginJFrame.setVisible(false); } } if (nowBeijingString == "beijing4JLabel") { if (nowWeizhiString == "right") { QqClientFriendsList04 qqClientFriendsList04 = new QqClientFriendsList04(); qqClientFriendsList04.setLocationRight(); ccs.addMsgListener(qqClientFriendsList04); // 左零右一 qqClientLoginJFrame.setVisible(false); } if (nowWeizhiString == "left") { QqClientFriendsList04 qqClientFriendsList04 = new QqClientFriendsList04(); qqClientFriendsList04.setLocationLeft(); ccs.addMsgListener(qqClientFriendsList04); qqClientLoginJFrame.setVisible(false); } } // 以上是登陆部分 ccs.start(); } else { ccs.closeMe(); JOptionPane.showMessageDialog(null, "登陆失败,请确认信息正确!"); } } else { ccs.closeMe(); JOptionPane.showMessageDialog(null, "连结失败,请确认服务器开启,IP和端口正确!"); } } }); exitRoundButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出按钮"); System.exit(0); } }); // 账号申请部分 applyJPanel.setBounds(0, 0, 510, 272); applyJPanel.setLayout(null); applyJPanel.setBackground(Color.WHITE); applyJPanel.add(nameJLabel); applyJPanel.add(applyMimaJLabel); applyJPanel.add(ifSureMimaJLabel); applyJPanel.add(sexJLabel); applyJPanel.add(yanzhengJTextField); applyJPanel.add(yanzhengJLabel); applyJPanel.add(yanzhengInputJLabel); nameJLabel.setBounds(90, 40, 100, 30); applyMimaJLabel.setBounds(90, 75, 100, 30); ifSureMimaJLabel.setBounds(73, 110, 100, 30); sexJLabel.setBounds(90, 147, 100, 30); yanzhengJLabel.setBounds(80, 185, 100, 30); applyJPanel.add(nameJTextField); applyJPanel.add(applyMimaJPasswordField); applyJPanel.add(ifSureMimaJPasswordField); nameJTextField.setBounds(170, 40, 140, 30); applyMimaJPasswordField.setBounds(170, 75, 140, 30); ifSureMimaJPasswordField.setBounds(170, 110, 140, 30); yanzhengJTextField.setBounds(175, 180, 90, 40); yanzhengInputJLabel.setBounds(275, 180, 100, 40); // 设置字体 nameJLabel.setFont(zhanghaoInputFont); nameJTextField.setFont(zhanghaoInputFont); applyMimaJLabel.setFont(zhanghaoInputFont); applyMimaJPasswordField.setFont(zhanghaoInputFont); ifSureMimaJLabel.setFont(zhanghaoInputFont); ifSureMimaJPasswordField.setFont(zhanghaoInputFont); sexJLabel.setFont(zhanghaoInputFont); yanzhengJLabel.setFont(zhanghaoInputFont); yanzhengJTextField.setFont(yanzhengInputFont); yanzhengInputJLabel.setFont(yanzhengInputFont); man = new Checkbox("男", sexCheckboxGroup, false); woman = new Checkbox("女", sexCheckboxGroup, false); sexCheckboxGroup.setSelectedCheckbox(man); man.setFont(zhanghaoInputFont); woman.setFont(zhanghaoInputFont); man.setBounds(190, 150, 35, 20); woman.setBounds(250, 150, 35, 20); applyJPanel.add(man); applyJPanel.add(woman); // 按钮 applyJPanel.add(zhuceJButton); applyJPanel.add(zhuceBackJButton); applyJPanel.add(touxiang4); zhuceJButton.setBounds(385, 150, 100, 50); zhuceJButton.setBackground(Color.CYAN); zhuceBackJButton.setBounds(385, 210, 100, 50); zhuceBackJButton.setBackground(Color.CYAN); touxiang4.setBounds(400, 40, 60, 60); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); // 切换头像 touxiang1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); applyJPanel.add(touxiang1_); applyJPanel.add(touxiang22); applyJPanel.add(touxiang33); applyJPanel.add(touxiang44); touxiang1_.setBounds(340, 40, 30, 30); touxiang22.setBounds(340, 70, 30, 30); touxiang33.setBounds(340, 100, 30, 30); touxiang44.setBounds(340, 130, 30, 30); applyJPanel.repaint(); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); } }); touxiang2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); applyJPanel.add(touxiang11); applyJPanel.add(touxiang2_); applyJPanel.add(touxiang33); applyJPanel.add(touxiang44); touxiang11.setBounds(340, 40, 30, 30); touxiang2_.setBounds(340, 70, 30, 30); touxiang33.setBounds(340, 100, 30, 30); touxiang44.setBounds(340, 130, 30, 30); applyJPanel.repaint(); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); } }); touxiang3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); applyJPanel.add(touxiang11); applyJPanel.add(touxiang22); applyJPanel.add(touxiang3_); applyJPanel.add(touxiang44); touxiang11.setBounds(340, 40, 30, 30); touxiang22.setBounds(340, 70, 30, 30); touxiang3_.setBounds(340, 100, 30, 30); touxiang44.setBounds(340, 130, 30, 30); applyJPanel.repaint(); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); } }); touxiang4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); applyJPanel.add(touxiang11); applyJPanel.add(touxiang22); applyJPanel.add(touxiang33); applyJPanel.add(touxiang4_); touxiang11.setBounds(340, 40, 30, 30); touxiang22.setBounds(340, 70, 30, 30); touxiang33.setBounds(340, 100, 30, 30); touxiang4_.setBounds(340, 130, 30, 30); applyJPanel.repaint(); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); } }); touxiang11.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); if (nowTouxiangInt == 2) { applyJPanel.remove(touxiang2); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang2_); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 3) { applyJPanel.remove(touxiang3); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang3_); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 4) { applyJPanel.remove(touxiang4); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang4_); } applyJPanel.add(touxiang1); touxiang1.setBounds(400, 40, 60, 60); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); applyJPanel.repaint(); nowTouxiangInt = 1; } }); touxiang22.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); if (nowTouxiangInt == 1) { applyJPanel.remove(touxiang1); applyJPanel.remove(touxiang1_); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 3) { applyJPanel.remove(touxiang3); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang3_); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 4) { applyJPanel.remove(touxiang4); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang4_); } applyJPanel.add(touxiang2); touxiang2.setBounds(400, 40, 60, 60); applyJPanel.remove(applyJLabel2); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); applyJPanel.repaint(); nowTouxiangInt = 2; } }); touxiang33.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); if (nowTouxiangInt == 1) { applyJPanel.remove(touxiang1); applyJPanel.remove(touxiang1_); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 2) { applyJPanel.remove(touxiang2); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang2_); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 4) { applyJPanel.remove(touxiang4); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang4_); } applyJPanel.add(touxiang3); touxiang3.setBounds(400, 40, 60, 60); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); applyJPanel.repaint(); nowTouxiangInt = 3; } }); touxiang44.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("切换头像"); if (nowTouxiangInt == 1) { applyJPanel.remove(touxiang1); applyJPanel.remove(touxiang1_); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 2) { applyJPanel.remove(touxiang2); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang2_); applyJPanel.remove(touxiang33); applyJPanel.remove(touxiang44); } if (nowTouxiangInt == 3) { applyJPanel.remove(touxiang3); applyJPanel.remove(touxiang11); applyJPanel.remove(touxiang22); applyJPanel.remove(touxiang3_); applyJPanel.remove(touxiang44); } applyJPanel.add(touxiang4); touxiang4.setBounds(400, 40, 60, 60); applyJPanel.remove(applyJLabel1); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); applyJPanel.repaint(); nowTouxiangInt = 4; } }); zhuceJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("注册按钮"); // JOptionPane.showMessageDialog(null, "未连接服务器"); // 向服务器发送信息 if (nameJTextField.getText().equals("") && ifSureMimaJPasswordField.getText().equals("") && mimaJPasswordField.getText().equals("") && yanzhengJTextField.getText().equals("")) { JOptionPane.showMessageDialog(null, "请完善信息!"); } else { if (nameJTextField.getText().equals("")) { JOptionPane.showMessageDialog(null, "请填写昵称!"); } if (applyMimaJPasswordField.getText().equals("")) { JOptionPane.showMessageDialog(null, "请填写密码!"); } if (ifSureMimaJPasswordField.getText().equals("")) { JOptionPane.showMessageDialog(null, "请填写确认密码!"); } if (yanzhengJTextField.getText().equals("")) { JOptionPane.showMessageDialog(null, "请填写验证码!"); } else { if (yanzhengJTextField.getText().equals( yanzhengmaString)) { if (ifSureMimaJPasswordField.getText().equals( applyMimaJPasswordField.getText())) { // 符合条件成功传送 // JOptionPane.showMessageDialog(null, "传送成功!"); if (ccs.ConServer()) { int qq = ccs.regServer( ifSureMimaJPasswordField.getText(), nameJTextField.getText(), sexCheckboxGroup .getSelectedCheckbox() .getLabel(), (byte) nowTouxiangInt); String s = "注册失败!"; if (qq != -1) { s = "注册成功,你的账号:" + qq; } javax.swing.JOptionPane.showMessageDialog( null, s); ccs.closeMe(); // 返回到登陆界面 qqClientLoginJFrame.remove(applyJPanel); qqClientLoginJFrame .add(qqClientLoginJPanel); qqClientLoginJPanel.setBounds(0, 0, 510, 272); qqClientLoginJFrame.repaint(); } } else { JOptionPane.showMessageDialog(null, "输入密码与确认密码不一致!"); } } else { JOptionPane.showMessageDialog(null, "验证码填写有误!"); } } } } }); zhuceBackJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("返回按钮"); qqClientLoginJFrame.remove(applyJPanel); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJFrame.repaint(); } }); // 确认密码 与密码不一致监听 ifSureMimaJPasswordField.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (ifSureMimaJPasswordField.getText().equals( applyMimaJPasswordField.getText())) { } else { System.out.println("点击ifSureMimaJPasswordField组件"); applyJPanel.remove(applyJLabel1); applyJPanel.add(ifSureMimaTishiJLabel); ifSureMimaTishiJLabel.setForeground(Color.red); ifSureMimaTishiJLabel.setBounds(193, 110, 100, 30); applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); } qqClientLoginJFrame.repaint(); } }); // 特点功能实现:3种皮肤切换 changeSkinJButton_.setBackground(Color.RED); changeSkinJButton_.setBounds(0, 0, 510, 68); changeSkinJButton1.setBackground(Color.RED); changeSkinJButton1.setBounds(0, 68, 510, 67); changeSkinJButton2.setBackground(Color.BLUE); changeSkinJButton2.setBounds(0, 135, 510, 67); changeSkinJButton3.setBackground(Color.YELLOW); changeSkinJButton3.setBounds(0, 202, 510, 68); // 更换皮肤面板 changeSkinJPanel.setLayout(null); changeSkinJPanel.setBackground(Color.WHITE); changeSkinJPanel.add(changeSkinJButton_); changeSkinJPanel.add(changeSkinJButton1); changeSkinJPanel.add(changeSkinJButton2); changeSkinJPanel.add(changeSkinJButton3); // 更换皮肤按钮 // changeSkinJButton.setBounds(0, 0, 600, 50); changeSkinLoginJButton.setBounds(510, 0, 90, 272); changeSkinLoginJButton.setBackground(Color.CYAN); changeSkinLoginJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("更换皮肤按钮"); qqClientLoginJFrame.add(changeSkinJPanel); qqClientLoginJFrame.remove(qqClientLoginJPanel); qqClientLoginJFrame.remove(applyJPanel); changeSkinJPanel.setBounds(0, 0, 510, 272); changeSkinJPanel.repaint(); } }); changeSkinLoginJButton1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("更换皮肤按钮"); qqClientLoginJFrame.add(changeSkinJPanel); qqClientLoginJFrame.remove(qqClientLoginJPanel); qqClientLoginJFrame.remove(applyJPanel); changeSkinJPanel.setBounds(0, 0, 510, 272); changeSkinJPanel.repaint(); } }); changeSkinLoginJButton2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("更换皮肤按钮"); qqClientLoginJFrame.add(changeSkinJPanel); qqClientLoginJFrame.remove(qqClientLoginJPanel); qqClientLoginJFrame.remove(applyJPanel); changeSkinJPanel.setBounds(0, 0, 510, 272); changeSkinJPanel.repaint(); } }); changeSkinLoginJButton3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("更换皮肤按钮"); qqClientLoginJFrame.add(changeSkinJPanel); qqClientLoginJFrame.remove(qqClientLoginJPanel); qqClientLoginJFrame.remove(applyJPanel); changeSkinJPanel.setBounds(0, 0, 510, 272); changeSkinJPanel.repaint(); } }); // applyJPanel.add(applyJLabel1); // applyJLabel1.setBounds(0, 0, 510, 272); // 界面1 changeSkinJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // 是否出现位置选择按钮 if (ifWeizhi == true) { if (nowBeijingString == "beijing1JLabel") { qqClientLoginJFrame.remove(left1); qqClientLoginJFrame.remove(right1_); } if (nowBeijingString == "beijing2JLabel") { qqClientLoginJFrame.remove(left2); qqClientLoginJFrame.remove(right2_); } if (nowBeijingString == "beijing3JLabel") { qqClientLoginJFrame.remove(left3); qqClientLoginJFrame.remove(right3_); } if (nowBeijingString == "beijing4JLabel") { qqClientLoginJFrame.remove(left4); qqClientLoginJFrame.remove(right4_); } qqClientLoginJFrame.setSize(600, 270); ifWeizhi = false; qqClientLoginJFrame.repaint(); } else { } // 换肤界面部分 changeSkinJPanel.remove(changeSkinJButton); changeSkinJPanel.add(changeSkinJButton_); changeSkinJButton_.setBounds(0, 0, 510, 68); // 主界面部分 qqClientLoginJFrame.remove(changeSkinJPanel); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJPanel.setBounds(0, 0, 510, 272); if (nowBeijingString == "beijing2JLabel") { changeSkinJPanel.remove(changeSkinJButton1_); changeSkinJPanel.add(changeSkinJButton1); changeSkinJButton1.setBounds(0, 68, 510, 68); qqClientLoginJPanel.remove(beijing2JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton1); nowBeijingString = "beijing1JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel2); } if (nowBeijingString == "beijing3JLabel") { changeSkinJPanel.remove(changeSkinJButton2_); changeSkinJPanel.add(changeSkinJButton2); changeSkinJButton2.setBounds(0, 135, 510, 68); qqClientLoginJPanel.remove(beijing3JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton2); nowBeijingString = "beijing1JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel3); } if (nowBeijingString == "beijing4JLabel") { changeSkinJPanel.remove(changeSkinJButton3_); changeSkinJPanel.add(changeSkinJButton3); changeSkinJButton3.setBounds(0, 202, 510, 68); qqClientLoginJPanel.remove(beijing4JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton3); nowBeijingString = "beijing1JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel4); } // 申请界面部分 applyJPanel.add(applyJLabel1); applyJLabel1.setBounds(0, 0, 510, 272); // qqClientLoginJFrame.add(changeSkinLoginJButton); changeSkinLoginJButton.setBounds(510, 0, 90, 272); qqClientLoginJPanel.add(beijing1JLabel); beijing1JLabel.setBounds(0, 0, 510, 272); qqClientLoginJFrame.repaint(); System.out.println(nowBeijingString); // } }); // 界面2 changeSkinJButton1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // 是否出现位置选择按钮 if (ifWeizhi == true) { if (nowBeijingString == "beijing1JLabel") { qqClientLoginJFrame.remove(left1); qqClientLoginJFrame.remove(right1_); } if (nowBeijingString == "beijing2JLabel") { qqClientLoginJFrame.remove(left2); qqClientLoginJFrame.remove(right2_); } if (nowBeijingString == "beijing3JLabel") { qqClientLoginJFrame.remove(left3); qqClientLoginJFrame.remove(right3_); } if (nowBeijingString == "beijing4JLabel") { qqClientLoginJFrame.remove(left4); qqClientLoginJFrame.remove(right4_); } qqClientLoginJFrame.setSize(600, 270); ifWeizhi = false; qqClientLoginJFrame.repaint(); } else { } changeSkinJPanel.remove(changeSkinJButton1); changeSkinJPanel.add(changeSkinJButton1_); changeSkinJButton1_.setBounds(0, 68, 510, 68); qqClientLoginJFrame.remove(changeSkinJPanel); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJPanel.setBounds(0, 0, 510, 272); if (nowBeijingString == "beijing1JLabel") { changeSkinJPanel.remove(changeSkinJButton_); changeSkinJPanel.add(changeSkinJButton); changeSkinJButton.setBounds(0, 0, 510, 68); qqClientLoginJPanel.remove(beijing1JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton); nowBeijingString = "beijing2JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel1); } if (nowBeijingString == "beijing3JLabel") { changeSkinJPanel.remove(changeSkinJButton2_); changeSkinJPanel.add(changeSkinJButton2); changeSkinJButton2.setBounds(0, 135, 510, 68); qqClientLoginJPanel.remove(beijing3JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton2); nowBeijingString = "beijing2JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel3); } if (nowBeijingString == "beijing4JLabel") { changeSkinJPanel.remove(changeSkinJButton3_); changeSkinJPanel.add(changeSkinJButton3); changeSkinJButton3.setBounds(0, 202, 510, 68); qqClientLoginJPanel.remove(beijing4JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton3); nowBeijingString = "beijing2JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel4); } // 申请界面部分 applyJPanel.add(applyJLabel2); applyJLabel2.setBounds(0, 0, 510, 272); // qqClientLoginJFrame.add(changeSkinLoginJButton1); changeSkinLoginJButton1.setBounds(510, 0, 90, 272); qqClientLoginJPanel.add(beijing2JLabel); beijing2JLabel.setBounds(0, 0, 510, 272); qqClientLoginJFrame.repaint(); System.out.println(nowBeijingString); // } }); // 界面3 changeSkinJButton2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // 是否出现位置选择按钮 if (ifWeizhi == true) { if (nowBeijingString == "beijing1JLabel") { qqClientLoginJFrame.remove(left1); qqClientLoginJFrame.remove(right1_); } if (nowBeijingString == "beijing2JLabel") { qqClientLoginJFrame.remove(left2); qqClientLoginJFrame.remove(right2_); } if (nowBeijingString == "beijing3JLabel") { qqClientLoginJFrame.remove(left3); qqClientLoginJFrame.remove(right3_); } if (nowBeijingString == "beijing4JLabel") { qqClientLoginJFrame.remove(left4); qqClientLoginJFrame.remove(right4_); } qqClientLoginJFrame.setSize(600, 270); ifWeizhi = false; qqClientLoginJFrame.repaint(); } else { } changeSkinJPanel.remove(changeSkinJButton2); changeSkinJPanel.add(changeSkinJButton2_); changeSkinJButton2_.setBounds(0, 135, 510, 68); qqClientLoginJFrame.remove(changeSkinJPanel); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJPanel.setBounds(0, 0, 510, 272); if (nowBeijingString == "beijing1JLabel") { changeSkinJPanel.remove(changeSkinJButton_); changeSkinJPanel.add(changeSkinJButton); changeSkinJButton.setBounds(0, 0, 510, 68); qqClientLoginJPanel.remove(beijing1JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton); nowBeijingString = "beijing3JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel1); } if (nowBeijingString == "beijing2JLabel") { changeSkinJPanel.remove(changeSkinJButton1_); changeSkinJPanel.add(changeSkinJButton1); changeSkinJButton1.setBounds(0, 68, 510, 68); qqClientLoginJPanel.remove(beijing2JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton1); nowBeijingString = "beijing3JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel2); } if (nowBeijingString == "beijing4JLabel") { changeSkinJPanel.remove(changeSkinJButton3_); changeSkinJPanel.add(changeSkinJButton3); changeSkinJButton3.setBounds(0, 202, 510, 68); qqClientLoginJPanel.remove(beijing4JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton3); nowBeijingString = "beijing3JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel4); } // 申请界面部分 applyJPanel.add(applyJLabel3); applyJLabel3.setBounds(0, 0, 510, 272); // qqClientLoginJFrame.add(changeSkinLoginJButton2); changeSkinLoginJButton2.setBounds(510, 0, 90, 272); qqClientLoginJPanel.add(beijing3JLabel); beijing3JLabel.setBounds(0, 0, 510, 272); qqClientLoginJFrame.repaint(); System.out.println(nowBeijingString); // } }); // 界面4 changeSkinJButton3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // 是否出现位置选择按钮 if (ifWeizhi == true) { if (nowBeijingString == "beijing1JLabel") { qqClientLoginJFrame.remove(left1); qqClientLoginJFrame.remove(right1_); } if (nowBeijingString == "beijing2JLabel") { qqClientLoginJFrame.remove(left2); qqClientLoginJFrame.remove(right2_); } if (nowBeijingString == "beijing3JLabel") { qqClientLoginJFrame.remove(left3); qqClientLoginJFrame.remove(right3_); } if (nowBeijingString == "beijing4JLabel") { qqClientLoginJFrame.remove(left4); qqClientLoginJFrame.remove(right4_); } qqClientLoginJFrame.setSize(600, 270); ifWeizhi = false; qqClientLoginJFrame.repaint(); } else { } changeSkinJPanel.remove(changeSkinJButton3); changeSkinJPanel.add(changeSkinJButton3_); changeSkinJButton3_.setBounds(0, 202, 510, 68); qqClientLoginJFrame.remove(changeSkinJPanel); qqClientLoginJFrame.add(qqClientLoginJPanel); qqClientLoginJPanel.setBounds(0, 0, 510, 272); if (nowBeijingString == "beijing1JLabel") { changeSkinJPanel.remove(changeSkinJButton_); changeSkinJPanel.add(changeSkinJButton); changeSkinJButton.setBounds(0, 0, 510, 68); qqClientLoginJPanel.remove(beijing1JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton); nowBeijingString = "beijing4JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel1); } if (nowBeijingString == "beijing2JLabel") { changeSkinJPanel.remove(changeSkinJButton1_); changeSkinJPanel.add(changeSkinJButton1); changeSkinJButton1.setBounds(0, 68, 510, 68); qqClientLoginJPanel.remove(beijing2JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton1); nowBeijingString = "beijing4JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel2); } if (nowBeijingString == "beijing3JLabel") { changeSkinJPanel.remove(changeSkinJButton2_); changeSkinJPanel.add(changeSkinJButton2); changeSkinJButton2.setBounds(0, 135, 510, 68); qqClientLoginJPanel.remove(beijing3JLabel); qqClientLoginJFrame.remove(changeSkinLoginJButton2); nowBeijingString = "beijing4JLabel"; // 申请界面部分 applyJPanel.remove(applyJLabel3); } // 申请界面部分 applyJPanel.add(applyJLabel4); applyJLabel4.setBounds(0, 0, 510, 272); // qqClientLoginJFrame.add(changeSkinLoginJButton3); changeSkinLoginJButton3.setBounds(510, 0, 90, 272); qqClientLoginJPanel.add(beijing4JLabel); beijing4JLabel.setBounds(0, 0, 510, 272); qqClientLoginJFrame.repaint(); System.out.println(nowBeijingString); // } }); // 位置按钮监听 locationRoundButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("位置按钮"); if (ifWeizhi == true) { JOptionPane.showMessageDialog(null, "您已经打开位置选择面板!"); } else { if (nowBeijingString == "beijing1JLabel") { ifWeizhi = true; qqClientLoginJFrame.setSize(690, 270); qqClientLoginJFrame.add(left1); left1.setBounds(600, 0, 90, 135); qqClientLoginJFrame.add(right1_); right1_.setBounds(600, 135, 90, 135); } if (nowBeijingString == "beijing2JLabel") { ifWeizhi = true; qqClientLoginJFrame.setSize(690, 270); qqClientLoginJFrame.add(left2); left2.setBounds(600, 0, 90, 135); qqClientLoginJFrame.add(right2_); right2_.setBounds(600, 135, 90, 135); } if (nowBeijingString == "beijing3JLabel") { ifWeizhi = true; qqClientLoginJFrame.setSize(690, 270); qqClientLoginJFrame.add(left3); left3.setBounds(600, 0, 90, 135); qqClientLoginJFrame.add(right3_); right3_.setBounds(600, 135, 90, 135); } if (nowBeijingString == "beijing4JLabel") { ifWeizhi = true; qqClientLoginJFrame.setSize(690, 270); qqClientLoginJFrame.add(left4); left4.setBounds(600, 0, 90, 135); qqClientLoginJFrame.add(right4_); right4_.setBounds(600, 135, 90, 135); } } } }); } public static void main(String[] args) { new QqClientLogin(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub } }
package view; // Qq主窗口 import java.awt.AWTException; import java.awt.Font; import java.awt.SystemTray; import java.awt.Toolkit; import java.awt.TrayIcon; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.ScrollPaneConstants; import model.TeamInfo; import model.UserInfo; import msg.MsgAddFriendResp; import msg.MsgAddYou; import msg.MsgChatText; import msg.MsgFindResp; import msg.MsgHead; import msg.MsgPerData; import msg.MsgTeamList; import msg.MsgType; import tools.RoundButton; import client.ClientConServer; import client.ClientMsgListener; @SuppressWarnings("serial") public class QqClientFriendsList04 extends JFrame implements MouseListener, MouseMotionListener, ClientMsgListener { // 定义各变量 private ClientConServer ccs = ClientConServer.getCcs(); private int count = 0; private int ownerqq; private JFrame qqClientFriendsList1; // 聊天界面的map String = "ownerqq otherqq" private Map<String, QqClientFriendsChat04> chats = new HashMap<String, QqClientFriendsChat04>(); private QqClientFind04 qqClientFind04; private QqClientFriendsChat04 qqClientFriendsChat04; private int locationInt; // 从Login传入的 昵称和号码 变成JLabel JLabel nickNameJLabel, qqNumberJLabel, sexJLabel; // 昵称: 账号: JLabel nickNameForeJLabel, qqNumberForeJLabel, sexForeJLabel; // 头像 JButton touxiang1, touxiang2, touxiang3, touxiang4; // 选择左边右边方法 public void setLocationRight() { qqClientFriendsList1.setLocation(1050, 0); locationInt = 1; } public void setLocationLeft() { qqClientFriendsList1.setLocation(0, 0); locationInt = 0; } private JLabel north, south, west, east, top; private JButton haoyou, moshengren, heimingdan, moshengren_, heimingdan_; // 好友列表部分 private JLabel MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name, moshengren1Name, heimingdan1Name; private JButton MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9, moshengren1, heimingdan1; JButton[] MyFriendArray; JLabel[] MyFriendArrayName; int[] qqs = new int[9]; // 定义头像图片 ImageIcon touxiang1ImageIcon, touxiang2ImageIcon, touxiang3ImageIcon, touxiang4ImageIcon; private JScrollPane haoyoulan, moshengrenlan, heimingdanlan; RoundButton exitRoundButton; String nickName; byte touxiang; // 坐标监听 private int x = 4, y = 4; // 头像资料部分 JButton touxiangJButton; QqClientZiliao qqClientZiliao; // 查找 和 退出 按钮 JButton findJButton, exitJButton, hideJButton; // 最小化托盘 JButton jb; TrayIcon trayIcon; SystemTray systemTray; // 刷新方法 // 昵称和号码刷新 public void flushNick(String nickName) { Font f = new Font("SansSerif", Font.BOLD, 16); nickNameJLabel.setText(nickName); nickNameJLabel.setFont(f); qqClientFriendsList1.add(nickNameJLabel); nickNameJLabel.setBounds(153, 10, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushQqNumber(int qqNumber) { Font f = new Font("SansSerif", Font.BOLD, 18); qqNumberJLabel.setFont(f); qqNumberJLabel.setText(qqNumber + " "); qqClientFriendsList1.add(qqNumberJLabel); qqNumberJLabel.setBounds(153, 45, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushSex(String sex) { System.out.println("性别:" + sex); Font f = new Font("SansSerif", Font.BOLD, 18); sexJLabel.setFont(f); sexJLabel.setText(sex); qqClientFriendsList1.add(sexJLabel); sexJLabel.setBounds(153, 80, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushTouxiang(byte touxiang) { if (touxiang == 1) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang1); touxiang1.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 2) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang2); touxiang2.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 3) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang3); touxiang3.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 4) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang4); touxiang4.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } } // 查找在线用户刷新 public void flushOnlineuser(ArrayList<UserInfo> al) { UserInfo userInfo; for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); qqClientFind04.findList.add(userInfo.getQq() + " " + userInfo.getNickname() + " " + userInfo.getSex()); } } // 向列表中添加一个好友 public void flushAddFriend(int qq, String nickname, byte icon) { qqs[count] = qq; System.out.println(count); System.out.println(MyFriendArrayName[count]); MyFriendArrayName[count].setVisible(true); MyFriendArrayName[count].setText(nickname); MyFriendArray[count].setVisible(true); count++; System.out.println("头像参数:" + icon); if (icon == 1) { MyFriendArray[count].setIcon(touxiang1ImageIcon); } if (icon == 2) { MyFriendArray[count].setIcon(touxiang2ImageIcon); } if (icon == 3) { MyFriendArray[count].setIcon(touxiang3ImageIcon); } if (icon == 4) { MyFriendArray[count].setIcon(touxiang4ImageIcon); } MyFriendArrayName[count].setText(nickname); } // 刷新好友列表 public void flushFriendsList(ArrayList<UserInfo> al) { UserInfo userInfo; count = al.size(); // 第一步获取好友个数 for (int i = 0; i < al.size(); i++) { UserInfo user = al.get(i); MyFriendArray[i].setVisible(true); MyFriendArrayName[i].setVisible(true); qqs[i] = user.getQq(); } // 第二步给好友赋予头像和昵称 for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); if (userInfo.getIcon() == 1) { MyFriendArray[i].setIcon(touxiang1ImageIcon); } if (userInfo.getIcon() == 2) { MyFriendArray[i].setIcon(touxiang2ImageIcon); } if (userInfo.getIcon() == 3) { MyFriendArray[i].setIcon(touxiang3ImageIcon); } if (userInfo.getIcon() == 4) { MyFriendArray[i].setIcon(touxiang4ImageIcon); } if(userInfo.getOnLine()==1) MyFriendArray[i].setEnabled(false); MyFriendArrayName[i].setText(userInfo.getNickname()); } } // 好友上线或下线刷新 public void flushOnlineOffline(int qq,int state){ // 遍历 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == qq) { num = i; break; } } if(state==MsgType.command_onLine){ //上线 JOptionPane.showMessageDialog(null, qq+"用户已经上线"); MyFriendArray[num].setEnabled(true); }else{ //下线 JOptionPane.showMessageDialog(null, qq+"用户已经下线"); MyFriendArray[num].setEnabled(false); } } public QqClientFriendsList04() { // 初始化 qqClientFriendsList1 = new JFrame(); haoyoulan = new JScrollPane(); moshengrenlan = new JScrollPane(); heimingdanlan = new JScrollPane(); touxiangJButton = new JButton(new ImageIcon( "image/listJiemian04/touxiang.jpg")); qqClientZiliao = new QqClientZiliao(); findJButton = new JButton(new ImageIcon("image/listJiemian04/find.jpg")); exitJButton = new JButton(new ImageIcon("image/listJiemian04/exit.jpg")); hideJButton = new JButton(new ImageIcon("image/listJiemian04/hide.jpg")); // 设置 字体 大小 Font f = new Font("SansSerif", Font.BOLD, 16); top = new JLabel(new ImageIcon("image/listJiemian04/top.jpg")); north = new JLabel(new ImageIcon("image/listJiemian04/up.jpg")); south = new JLabel(new ImageIcon("image/listJiemian04/down.jpg")); west = new JLabel(new ImageIcon("image/listJiemian04/left.jpg")); east = new JLabel(new ImageIcon("image/listJiemian04/right.jpg")); haoyou = new JButton(new ImageIcon("image/listJiemian04/haoyou.jpg")); moshengren = new JButton(new ImageIcon( "image/listJiemian04/moshengren.jpg")); moshengren_ = new JButton(new ImageIcon( "image/listJiemian04/moshengren_.jpg")); heimingdan = new JButton(new ImageIcon( "image/listJiemian04/heimingdan.jpg")); heimingdan_ = new JButton(new ImageIcon( "image/listJiemian04/heimingdan_.jpg")); // 最小化托盘功能 systemTray = SystemTray.getSystemTray(); try { trayIcon = new TrayIcon(ImageIO.read(new File("0.gif"))); systemTray.add(trayIcon); // 设置托盘的图标,0.gif与该类文件同一目录 } catch (IOException e1) { e1.printStackTrace(); } catch (AWTException e2) { e2.printStackTrace(); } // 昵称 账号初始化 nickNameJLabel = new JLabel(); qqNumberJLabel = new JLabel(); sexJLabel = new JLabel(); nickNameForeJLabel = new JLabel("昵称:"); qqNumberForeJLabel = new JLabel("账号:"); sexForeJLabel = new JLabel("性别:"); // 头像初始化 touxiang1 = new JButton(new ImageIcon( "image/listJiemian04/touxiang1.jpg")); touxiang2 = new JButton(new ImageIcon( "image/listJiemian04/touxiang2.jpg")); touxiang3 = new JButton(new ImageIcon( "image/listJiemian04/touxiang3.jpg")); touxiang4 = new JButton(new ImageIcon( "image/listJiemian04/touxiang4.jpg")); // 头像图片初始化 touxiang1ImageIcon = new ImageIcon("image/loginJiemian/touxiang-1.png"); touxiang2ImageIcon = new ImageIcon("image/loginJiemian/touxiang-2.png"); touxiang3ImageIcon = new ImageIcon("image/loginJiemian/touxiang-3.png"); touxiang4ImageIcon = new ImageIcon("image/loginJiemian/touxiang-4.png"); // 窗口设置 Toolkit toolkit = Toolkit.getDefaultToolkit(); qqClientFriendsList1.setIconImage(toolkit.getImage("1.png")); qqClientFriendsList1.setSize(265, 700); // qqClientFriendsList1.setLocation(1050, 0); qqClientFriendsList1.setUndecorated(true); Drag drag = new Drag(qqClientFriendsList1); drag.setDragable(); qqClientFriendsList1.setVisible(true); qqClientFriendsList1.setResizable(false); qqClientFriendsList1.setDefaultCloseOperation(EXIT_ON_CLOSE); qqClientFriendsList1.setLayout(null); qqClientFriendsList1.setTitle("LZChat"); // 昵称 账号设置 nickNameForeJLabel.setFont(f); qqNumberForeJLabel.setFont(f); sexForeJLabel.setFont(f); qqClientFriendsList1.add(nickNameForeJLabel); nickNameForeJLabel.setBounds(110, 10, 53, 20); qqClientFriendsList1.add(qqNumberForeJLabel); qqNumberForeJLabel.setBounds(110, 45, 53, 20); qqClientFriendsList1.add(sexForeJLabel); sexForeJLabel.setBounds(110, 80, 53, 20); // 边界加入框架 qqClientFriendsList1.add(top); qqClientFriendsList1.add(north); qqClientFriendsList1.add(south); qqClientFriendsList1.add(west); qqClientFriendsList1.add(east); qqClientFriendsList1.add(haoyoulan); qqClientFriendsList1.add(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); // 好友栏 haoyoulan .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); haoyoulan.setBounds(50, 192, 165, 371); haoyoulan.setLayout(null); //nickName = "昵称"; // 头像按钮 qqClientFriendsList1.add(touxiangJButton); touxiangJButton.setBounds(0, 0, 100, 100); touxiangJButton.addMouseListener(new MouseAdapter() { public void mouseExited(MouseEvent e) { QqClientZiliao.qqClientZiliao.setVisible(false); } }); // 退出和查找按钮 qqClientFriendsList1.add(findJButton); qqClientFriendsList1.add(exitJButton); qqClientFriendsList1.add(hideJButton); findJButton.setBounds(205, 50, 60, 50); exitJButton.setBounds(205, 0, 60, 50); hideJButton.setBounds(215, 100, 50, 45); findJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("查找"); if (locationInt == 0) { qqClientFind04 = new QqClientFind04(ownerqq); qqClientFind04.setQqClientFindJFrameLeft(); } if (locationInt == 1) { qqClientFind04 = new QqClientFind04(ownerqq); qqClientFind04.setQqClientFindJFrameRight(); } MsgHead msg = new MsgHead(); msg.setType(MsgType.command_find); msg.setTotalLen(4 + 1 + 4 + 4); msg.setDest(MsgType.SERVER_QQ_NUMBER); msg.setSrc(ownerqq); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出"); System.exit(0); } }); hideJButton.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { System.out.println("隐藏托盘"); qqClientFriendsList1.setVisible(false);// 窗口最小化时dispose该窗口 } }); trayIcon.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) // 双击托盘窗口再现 setExtendedState(JFrame.NORMAL); qqClientFriendsList1.setVisible(true); } }); // 边界位置设定 top.setBounds(100, 0, 105, 100); north.setBounds(50, 100, 165, 45); south.setBounds(50, 655, 165, 45); west.setBounds(0, 100, 50, 600); east.setBounds(215, 145, 50, 555); // 按钮加入框架 qqClientFriendsList1.add(haoyou); qqClientFriendsList1.add(moshengren); qqClientFriendsList1.add(heimingdan); haoyou.setBounds(50, 145, 165, 48); moshengren.setBounds(50, 562, 165, 48); heimingdan.setBounds(50, 607, 165, 48); // addMouseListener(this); addMouseMotionListener(this); // 初始化好友 MyFriend1 = new JButton(new ImageIcon("image/touxiang/102-40.png")); MyFriend1Name = new JLabel(nickName); haoyoulan.add(MyFriend1Name); MyFriend1Name.setFont(f); MyFriend1Name.setBounds(44, 0, 44, 44); haoyoulan.add(MyFriend1); MyFriend1.setBounds(0, 0, 44, 44); MyFriend2 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend2Name = new JLabel(nickName); haoyoulan.add(MyFriend2Name); MyFriend2Name.setFont(f); MyFriend2Name.setBounds(44, 44, 44, 44); haoyoulan.add(MyFriend2); MyFriend2.setBounds(0, 44, 44, 44); MyFriend3 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend3Name = new JLabel(nickName); haoyoulan.add(MyFriend3Name); MyFriend3Name.setFont(f); MyFriend3Name.setBounds(44, 88, 44, 44); haoyoulan.add(MyFriend3); MyFriend3.setBounds(0, 88, 44, 44); MyFriend4 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend4Name = new JLabel(nickName); haoyoulan.add(MyFriend4Name); MyFriend4Name.setFont(f); MyFriend4Name.setBounds(44, 132, 44, 44); haoyoulan.add(MyFriend4); MyFriend4.setBounds(0, 132, 44, 44); MyFriend5 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend5Name = new JLabel(nickName); haoyoulan.add(MyFriend5Name); MyFriend5Name.setFont(f); MyFriend5Name.setBounds(44, 176, 44, 44); haoyoulan.add(MyFriend5); MyFriend5.setBounds(0, 176, 44, 44); MyFriend6 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend6Name = new JLabel(nickName); haoyoulan.add(MyFriend6Name); MyFriend6Name.setFont(f); MyFriend6Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend6); MyFriend6.setBounds(0, 220, 44, 44); MyFriend7 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend7Name = new JLabel(nickName); haoyoulan.add(MyFriend7Name); MyFriend7Name.setFont(f); MyFriend7Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend7); MyFriend7.setBounds(0, 220, 44, 44); MyFriend8 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend8Name = new JLabel(nickName); haoyoulan.add(MyFriend8Name); MyFriend8Name.setFont(f); MyFriend8Name.setBounds(44, 264, 44, 44); haoyoulan.add(MyFriend8); MyFriend8.setBounds(0, 264, 44, 44); MyFriend9 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend9Name = new JLabel(nickName); haoyoulan.add(MyFriend9Name); MyFriend9Name.setFont(f); MyFriend9Name.setBounds(44, 308, 44, 44); haoyoulan.add(MyFriend9); MyFriend9.setBounds(0, 308, 44, 44); // // 开始的时候全部设为不可视 MyFriend1.setVisible(false); MyFriend2.setVisible(false); MyFriend3.setVisible(false); MyFriend4.setVisible(false); MyFriend5.setVisible(false); MyFriend6.setVisible(false); MyFriend7.setVisible(false); MyFriend8.setVisible(false); MyFriend9.setVisible(false); MyFriend1Name.setVisible(false); MyFriend2Name.setVisible(false); MyFriend3Name.setVisible(false); MyFriend4Name.setVisible(false); MyFriend5Name.setVisible(false); MyFriend6Name.setVisible(false); MyFriend7Name.setVisible(false); MyFriend8Name.setVisible(false); MyFriend9Name.setVisible(false); MyFriendArray = new JButton[] { MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9 }; MyFriendArrayName = new JLabel[] { MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name }; // 好友按钮监听 MyFriend1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(1); } }); MyFriend2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(2); } }); MyFriend3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(3); } }); MyFriend4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(4); } }); MyFriend5.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(5); } }); MyFriend6.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(6); } }); MyFriend7.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(7); } }); MyFriend8.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(8); } }); MyFriend9.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(9); } }); moshengren1 = new JButton(new ImageIcon("image/touxiang/149-40.png")); moshengren1Name = new JLabel("小北"); moshengren1Name.setFont(f); moshengrenlan.add(moshengren1); moshengrenlan.add(moshengren1Name); moshengrenlan.setLayout(null); moshengren1.setBounds(0, 0, 44, 44); moshengren1Name.setBounds(44, 0, 44, 44); heimingdan1 = new JButton(new ImageIcon("image/touxiang/150-40.png")); heimingdan1Name = new JLabel("小南"); heimingdan1Name.setFont(f); heimingdanlan.add(heimingdan1); heimingdanlan.add(heimingdan1Name); heimingdanlan.setLayout(null); heimingdan1.setBounds(0, 0, 44, 44); heimingdan1Name.setBounds(44, 0, 44, 44); // 好友栏 陌生人栏 黑名单栏 切换设计 // 规定 当"moshengren1"时陌生人按钮在下面 当"heimingdan1"时黑名单按钮在下面 // 当"moshengren2"时陌生人按钮在上面 当"heimingdan2"时黑名单按钮在上面 moshengren.setName("moshengren1"); heimingdan.setName("heimingdan1"); haoyou.addMouseListener(new MouseAdapter() { }); moshengren.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren1") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 371); qqClientFriendsList1.repaint(); } } }); moshengren_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren2") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 191, 165, 370); qqClientFriendsList1.repaint(); } else { qqClientFriendsList1.add(moshengren); qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 192, 165, 369); qqClientFriendsList1.repaint(); } } }); heimingdan.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 369); qqClientFriendsList1.repaint(); } else if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 370); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); qqClientFriendsList1.repaint(); } } }); heimingdan_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan2") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 370); qqClientFriendsList1.repaint(); } } }); // 获得当前鼠标坐标 qqClientFriendsList1.addMouseMotionListener(new MouseAdapter() { public void mouseMoved(MouseEvent e) { x = e.getX(); y = e.getY(); System.out.println("当前X坐标是:" + x + " Y坐标是:" + y); } }); // 判断边界窗口消失 // qqClientFriendsList1.addMouseListener(new MouseAdapter() { // public void mouseExited(MouseEvent e) { // System.out.println("离开时X、Y坐标是:" + x + " " + y); // if (x > 260 || y > 645 || x < 5) { // qqClientFriendsList1.setVisible(false); // new QqClientFriendsListX04(); // // // } // // } // // }); // } public void chat(int i) { QqClientFriendsChat04 qqchat = new QqClientFriendsChat04(ownerqq, MyFriendArrayName[i-1].getText(), qqs[i - 1]); String str = ownerqq + " " + qqs[i - 1]; System.out.println(str); chats.put(str, qqchat); } public static void main(String[] args) { new QqClientFriendsList04(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub } public void dealMsg(MsgHead msg) { if (msg.getType() == MsgType.command_perdata) { MsgPerData mpd = (MsgPerData) msg; // mpd.getDest(); // mpd.getIcon(); // mpd.getSex(); // mpd.getNickname(); // 刷新界面 ownerqq = mpd.getDest(); flushNick(mpd.getNickname()); flushQqNumber(mpd.getDest()); flushTouxiang(mpd.getIcon()); flushSex(mpd.getSex()); } else if (msg.getType() == MsgType.command_teamList) { MsgTeamList mtl = (MsgTeamList) msg; ArrayList<TeamInfo> teams = mtl.getTeamList(); // for (TeamInfo teamInfo : teams) { TeamInfo teamInfo = teams.get(0); ArrayList<UserInfo> users = teamInfo.getFriendList(); for (UserInfo userInfo : users) { // 可以得到的数据 userInfo.getQq(); userInfo.getNickname(); userInfo.getIcon(); userInfo.getOnLine(); userInfo.getSex(); userInfo.getOnLine(); // 刷新界面 flushFriendsList(users); } } else if (msg.getType() == MsgType.command_find_resp) { MsgFindResp mfr = (MsgFindResp) msg; ArrayList<UserInfo> users = mfr.getUsers(); // qqClientFind04的刷新方法 flushOnlineuser(users); } else if (msg.getType() == MsgType.command_addFriend_Resp) { MsgAddFriendResp mafr = (MsgAddFriendResp) msg; if (mafr.getState() == 0) { flushAddFriend(mafr.getQq(), mafr.getNickName(), mafr.getIcon()); } else { JOptionPane.showMessageDialog(null, mafr.getSrc() + " 拒接你的添加好友请求!"); } } else if (msg.getType() == MsgType.command_onLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_onLine); } else if (msg.getType() == MsgType.command_offLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_offLine); } else if (msg.getType() == MsgType.command_chatText) { MsgChatText mct = (MsgChatText) msg; String key = mct.getDest()+" "+mct.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == mct.getSrc()) { num = i; break; } } //System.out.println("MyFriendArrayName[num].getText()"+MyFriendArrayName[num].getText()+" num:"+num+" key:"+key); qqClientFriendsChat04 = chats.get(key); if (qqClientFriendsChat04 == null) { qqClientFriendsChat04 = new QqClientFriendsChat04(ownerqq, MyFriendArrayName[num].getText(), mct.getSrc()); chats.put(key, qqClientFriendsChat04); } qqClientFriendsChat04.flushFriendMsg(mct.getTime(),mct.getContent(), MyFriendArrayName[num].getText() ); } else if (msg.getType() == MsgType.command_addYou) { MsgAddYou may = (MsgAddYou) msg; may.getSex(); may.getNote(); may.getNickname(); may.getSrc(); // 弹出界面 new QqClientAcceptFriends04(ownerqq).flushAccept(may.getSrc(), may.getNickname(), may.getNote()); }else if(msg.getType() == MsgType.command_vibration){ String key = msg.getDest()+" "+msg.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == msg.getSrc()) { num = i; break; } } qqClientFriendsChat04 = chats.get(key); if (qqClientFriendsChat04 == null) { qqClientFriendsChat04 = new QqClientFriendsChat04(ownerqq, MyFriendArrayName[num].getText(), msg.getSrc()); chats.put(key, qqClientFriendsChat04); } //震动窗口 qqClientFriendsChat04.Vibration(); } } }
package view; // Qq主窗口 import java.awt.AWTException; import java.awt.Font; import java.awt.SystemTray; import java.awt.Toolkit; import java.awt.TrayIcon; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.ScrollPaneConstants; import model.TeamInfo; import model.UserInfo; import msg.MsgAddFriendResp; import msg.MsgAddYou; import msg.MsgChatText; import msg.MsgFindResp; import msg.MsgHead; import msg.MsgPerData; import msg.MsgTeamList; import msg.MsgType; import tools.RoundButton; import client.ClientConServer; import client.ClientMsgListener; @SuppressWarnings("serial") public class QqClientFriendsList03 extends JFrame implements MouseListener, MouseMotionListener, ClientMsgListener { // 定义各变量 private ClientConServer ccs = ClientConServer.getCcs(); private int count = 0; private int ownerqq; private JFrame qqClientFriendsList1; // 聊天界面的map String = "ownerqq otherqq" private Map<String, QqClientFriendsChat03> chats = new HashMap<String, QqClientFriendsChat03>(); private QqClientFind03 qqClientFind03; private QqClientFriendsChat03 qqClientFriendsChat03; private int locationInt; // 从Login传入的 昵称和号码 变成JLabel JLabel nickNameJLabel, qqNumberJLabel, sexJLabel; // 昵称: 账号: JLabel nickNameForeJLabel, qqNumberForeJLabel, sexForeJLabel; // 头像 JButton touxiang1, touxiang2, touxiang3, touxiang4; // 选择左边右边方法 public void setLocationRight() { qqClientFriendsList1.setLocation(1050, 0); locationInt = 1; } public void setLocationLeft() { qqClientFriendsList1.setLocation(0, 0); locationInt = 0; } private JLabel north, south, west, east, top; private JButton haoyou, moshengren, heimingdan, moshengren_, heimingdan_; // 好友列表部分 private JLabel MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name, moshengren1Name, heimingdan1Name; private JButton MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9, moshengren1, heimingdan1; JButton[] MyFriendArray; JLabel[] MyFriendArrayName; int[] qqs = new int[9]; // 定义头像图片 ImageIcon touxiang1ImageIcon, touxiang2ImageIcon, touxiang3ImageIcon, touxiang4ImageIcon; private JScrollPane haoyoulan, moshengrenlan, heimingdanlan; RoundButton exitRoundButton; String nickName; byte touxiang; // 坐标监听 private int x = 4, y = 4; // 头像资料部分 JButton touxiangJButton; QqClientZiliao qqClientZiliao; // 查找 和 退出 按钮 JButton findJButton, exitJButton, hideJButton; // 最小化托盘 JButton jb; TrayIcon trayIcon; SystemTray systemTray; // 刷新方法 // 昵称和号码刷新 public void flushNick(String nickName) { Font f = new Font("SansSerif", Font.BOLD, 16); nickNameJLabel.setText(nickName); nickNameJLabel.setFont(f); qqClientFriendsList1.add(nickNameJLabel); nickNameJLabel.setBounds(153, 10, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushQqNumber(int qqNumber) { Font f = new Font("SansSerif", Font.BOLD, 18); qqNumberJLabel.setFont(f); qqNumberJLabel.setText(qqNumber + " "); qqClientFriendsList1.add(qqNumberJLabel); qqNumberJLabel.setBounds(153, 45, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushSex(String sex) { System.out.println("性别:" + sex); Font f = new Font("SansSerif", Font.BOLD, 18); sexJLabel.setFont(f); sexJLabel.setText(sex); qqClientFriendsList1.add(sexJLabel); sexJLabel.setBounds(153, 80, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushTouxiang(byte touxiang) { if (touxiang == 1) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang1); touxiang1.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 2) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang2); touxiang2.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 3) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang3); touxiang3.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 4) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang4); touxiang4.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } } // 查找在线用户刷新 public void flushOnlineuser(ArrayList<UserInfo> al) { UserInfo userInfo; for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); qqClientFind03.findList.add(userInfo.getQq() + " " + userInfo.getNickname() + " " + userInfo.getSex()); } } // 向列表中添加一个好友 public void flushAddFriend(int qq, String nickname, byte icon) { qqs[count] = qq; System.out.println(count); System.out.println(MyFriendArrayName[count]); MyFriendArrayName[count].setVisible(true); MyFriendArrayName[count].setText(nickname); MyFriendArray[count].setVisible(true); count++; System.out.println("头像参数:" + icon); if (icon == 1) { MyFriendArray[count].setIcon(touxiang1ImageIcon); } if (icon == 2) { MyFriendArray[count].setIcon(touxiang2ImageIcon); } if (icon == 3) { MyFriendArray[count].setIcon(touxiang3ImageIcon); } if (icon == 4) { MyFriendArray[count].setIcon(touxiang4ImageIcon); } MyFriendArrayName[count].setText(nickname); } // 刷新好友列表 public void flushFriendsList(ArrayList<UserInfo> al) { UserInfo userInfo; count = al.size(); // 第一步获取好友个数 for (int i = 0; i < al.size(); i++) { UserInfo user = al.get(i); MyFriendArray[i].setVisible(true); MyFriendArrayName[i].setVisible(true); qqs[i] = user.getQq(); } // 第二步给好友赋予头像和昵称 for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); if (userInfo.getIcon() == 1) { MyFriendArray[i].setIcon(touxiang1ImageIcon); } if (userInfo.getIcon() == 2) { MyFriendArray[i].setIcon(touxiang2ImageIcon); } if (userInfo.getIcon() == 3) { MyFriendArray[i].setIcon(touxiang3ImageIcon); } if (userInfo.getIcon() == 4) { MyFriendArray[i].setIcon(touxiang4ImageIcon); } if(userInfo.getOnLine()==1) MyFriendArray[i].setEnabled(false); MyFriendArrayName[i].setText(userInfo.getNickname()); } } // 好友上线或下线刷新 public void flushOnlineOffline(int qq,int state){ // 遍历 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == qq) { num = i; break; } } if(state==MsgType.command_onLine){ //上线 JOptionPane.showMessageDialog(null, qq+"用户已经上线"); MyFriendArray[num].setEnabled(true); }else{ //下线 JOptionPane.showMessageDialog(null, qq+"用户已经下线"); MyFriendArray[num].setEnabled(false); } } public QqClientFriendsList03() { // 初始化 qqClientFriendsList1 = new JFrame(); haoyoulan = new JScrollPane(); moshengrenlan = new JScrollPane(); heimingdanlan = new JScrollPane(); touxiangJButton = new JButton(new ImageIcon( "image/listJiemian03/touxiang.jpg")); qqClientZiliao = new QqClientZiliao(); findJButton = new JButton(new ImageIcon("image/listJiemian03/find.jpg")); exitJButton = new JButton(new ImageIcon("image/listJiemian03/exit.jpg")); hideJButton = new JButton(new ImageIcon("image/listJiemian03/hide.jpg")); // 设置 字体 大小 Font f = new Font("SansSerif", Font.BOLD, 16); top = new JLabel(new ImageIcon("image/listJiemian03/top.jpg")); north = new JLabel(new ImageIcon("image/listJiemian03/up.jpg")); south = new JLabel(new ImageIcon("image/listJiemian03/down.jpg")); west = new JLabel(new ImageIcon("image/listJiemian03/left.jpg")); east = new JLabel(new ImageIcon("image/listJiemian03/right.jpg")); haoyou = new JButton(new ImageIcon("image/listJiemian03/haoyou.jpg")); moshengren = new JButton(new ImageIcon( "image/listJiemian03/moshengren.jpg")); moshengren_ = new JButton(new ImageIcon( "image/listJiemian03/moshengren_.jpg")); heimingdan = new JButton(new ImageIcon( "image/listJiemian03/heimingdan.jpg")); heimingdan_ = new JButton(new ImageIcon( "image/listJiemian03/heimingdan_.jpg")); // 最小化托盘功能 systemTray = SystemTray.getSystemTray(); try { trayIcon = new TrayIcon(ImageIO.read(new File("0.gif"))); systemTray.add(trayIcon); // 设置托盘的图标,0.gif与该类文件同一目录 } catch (IOException e1) { e1.printStackTrace(); } catch (AWTException e2) { e2.printStackTrace(); } // 昵称 账号初始化 nickNameJLabel = new JLabel(); qqNumberJLabel = new JLabel(); sexJLabel = new JLabel(); nickNameForeJLabel = new JLabel("昵称:"); qqNumberForeJLabel = new JLabel("账号:"); sexForeJLabel = new JLabel("性别:"); // 头像初始化 touxiang1 = new JButton(new ImageIcon( "image/listJiemian03/touxiang1.jpg")); touxiang2 = new JButton(new ImageIcon( "image/listJiemian03/touxiang2.jpg")); touxiang3 = new JButton(new ImageIcon( "image/listJiemian03/touxiang3.jpg")); touxiang4 = new JButton(new ImageIcon( "image/listJiemian03/touxiang4.jpg")); // 头像图片初始化 touxiang1ImageIcon = new ImageIcon("image/loginJiemian/touxiang-1.png"); touxiang2ImageIcon = new ImageIcon("image/loginJiemian/touxiang-2.png"); touxiang3ImageIcon = new ImageIcon("image/loginJiemian/touxiang-3.png"); touxiang4ImageIcon = new ImageIcon("image/loginJiemian/touxiang-4.png"); // 窗口设置 Toolkit toolkit = Toolkit.getDefaultToolkit(); qqClientFriendsList1.setIconImage(toolkit.getImage("1.png")); qqClientFriendsList1.setSize(265, 700); // qqClientFriendsList1.setLocation(1050, 0); qqClientFriendsList1.setUndecorated(true); Drag drag = new Drag(qqClientFriendsList1); drag.setDragable(); qqClientFriendsList1.setVisible(true); qqClientFriendsList1.setResizable(false); qqClientFriendsList1.setDefaultCloseOperation(EXIT_ON_CLOSE); qqClientFriendsList1.setLayout(null); qqClientFriendsList1.setTitle("LZChat"); // 昵称 账号设置 nickNameForeJLabel.setFont(f); qqNumberForeJLabel.setFont(f); sexForeJLabel.setFont(f); qqClientFriendsList1.add(nickNameForeJLabel); nickNameForeJLabel.setBounds(110, 10, 53, 20); qqClientFriendsList1.add(qqNumberForeJLabel); qqNumberForeJLabel.setBounds(110, 45, 53, 20); qqClientFriendsList1.add(sexForeJLabel); sexForeJLabel.setBounds(110, 80, 53, 20); // 边界加入框架 qqClientFriendsList1.add(top); qqClientFriendsList1.add(north); qqClientFriendsList1.add(south); qqClientFriendsList1.add(west); qqClientFriendsList1.add(east); qqClientFriendsList1.add(haoyoulan); qqClientFriendsList1.add(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); // 好友栏 haoyoulan .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); haoyoulan.setBounds(50, 192, 165, 371); haoyoulan.setLayout(null); //nickName = "昵称"; // 头像按钮 qqClientFriendsList1.add(touxiangJButton); touxiangJButton.setBounds(0, 0, 100, 100); touxiangJButton.addMouseListener(new MouseAdapter() { public void mouseExited(MouseEvent e) { QqClientZiliao.qqClientZiliao.setVisible(false); } }); // 退出和查找按钮 qqClientFriendsList1.add(findJButton); qqClientFriendsList1.add(exitJButton); qqClientFriendsList1.add(hideJButton); findJButton.setBounds(205, 50, 60, 50); exitJButton.setBounds(205, 0, 60, 50); hideJButton.setBounds(215, 100, 50, 45); findJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("查找"); if (locationInt == 0) { qqClientFind03 = new QqClientFind03(ownerqq); qqClientFind03.setQqClientFindJFrameLeft(); } if (locationInt == 1) { qqClientFind03 = new QqClientFind03(ownerqq); qqClientFind03.setQqClientFindJFrameRight(); } MsgHead msg = new MsgHead(); msg.setType(MsgType.command_find); msg.setTotalLen(4 + 1 + 4 + 4); msg.setDest(MsgType.SERVER_QQ_NUMBER); msg.setSrc(ownerqq); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出"); System.exit(0); } }); hideJButton.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { System.out.println("隐藏托盘"); qqClientFriendsList1.setVisible(false);// 窗口最小化时dispose该窗口 } }); trayIcon.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) // 双击托盘窗口再现 setExtendedState(JFrame.NORMAL); qqClientFriendsList1.setVisible(true); } }); // 边界位置设定 top.setBounds(100, 0, 105, 100); north.setBounds(50, 100, 165, 45); south.setBounds(50, 655, 165, 45); west.setBounds(0, 100, 50, 600); east.setBounds(215, 145, 50, 555); // 按钮加入框架 qqClientFriendsList1.add(haoyou); qqClientFriendsList1.add(moshengren); qqClientFriendsList1.add(heimingdan); haoyou.setBounds(50, 145, 165, 48); moshengren.setBounds(50, 562, 165, 48); heimingdan.setBounds(50, 607, 165, 48); // addMouseListener(this); addMouseMotionListener(this); // 初始化好友 MyFriend1 = new JButton(new ImageIcon("image/touxiang/102-40.png")); MyFriend1Name = new JLabel(nickName); haoyoulan.add(MyFriend1Name); MyFriend1Name.setFont(f); MyFriend1Name.setBounds(44, 0, 44, 44); haoyoulan.add(MyFriend1); MyFriend1.setBounds(0, 0, 44, 44); MyFriend2 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend2Name = new JLabel(nickName); haoyoulan.add(MyFriend2Name); MyFriend2Name.setFont(f); MyFriend2Name.setBounds(44, 44, 44, 44); haoyoulan.add(MyFriend2); MyFriend2.setBounds(0, 44, 44, 44); MyFriend3 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend3Name = new JLabel(nickName); haoyoulan.add(MyFriend3Name); MyFriend3Name.setFont(f); MyFriend3Name.setBounds(44, 88, 44, 44); haoyoulan.add(MyFriend3); MyFriend3.setBounds(0, 88, 44, 44); MyFriend4 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend4Name = new JLabel(nickName); haoyoulan.add(MyFriend4Name); MyFriend4Name.setFont(f); MyFriend4Name.setBounds(44, 132, 44, 44); haoyoulan.add(MyFriend4); MyFriend4.setBounds(0, 132, 44, 44); MyFriend5 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend5Name = new JLabel(nickName); haoyoulan.add(MyFriend5Name); MyFriend5Name.setFont(f); MyFriend5Name.setBounds(44, 176, 44, 44); haoyoulan.add(MyFriend5); MyFriend5.setBounds(0, 176, 44, 44); MyFriend6 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend6Name = new JLabel(nickName); haoyoulan.add(MyFriend6Name); MyFriend6Name.setFont(f); MyFriend6Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend6); MyFriend6.setBounds(0, 220, 44, 44); MyFriend7 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend7Name = new JLabel(nickName); haoyoulan.add(MyFriend7Name); MyFriend7Name.setFont(f); MyFriend7Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend7); MyFriend7.setBounds(0, 220, 44, 44); MyFriend8 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend8Name = new JLabel(nickName); haoyoulan.add(MyFriend8Name); MyFriend8Name.setFont(f); MyFriend8Name.setBounds(44, 264, 44, 44); haoyoulan.add(MyFriend8); MyFriend8.setBounds(0, 264, 44, 44); MyFriend9 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend9Name = new JLabel(nickName); haoyoulan.add(MyFriend9Name); MyFriend9Name.setFont(f); MyFriend9Name.setBounds(44, 308, 44, 44); haoyoulan.add(MyFriend9); MyFriend9.setBounds(0, 308, 44, 44); // // 开始的时候全部设为不可视 MyFriend1.setVisible(false); MyFriend2.setVisible(false); MyFriend3.setVisible(false); MyFriend4.setVisible(false); MyFriend5.setVisible(false); MyFriend6.setVisible(false); MyFriend7.setVisible(false); MyFriend8.setVisible(false); MyFriend9.setVisible(false); MyFriend1Name.setVisible(false); MyFriend2Name.setVisible(false); MyFriend3Name.setVisible(false); MyFriend4Name.setVisible(false); MyFriend5Name.setVisible(false); MyFriend6Name.setVisible(false); MyFriend7Name.setVisible(false); MyFriend8Name.setVisible(false); MyFriend9Name.setVisible(false); MyFriendArray = new JButton[] { MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9 }; MyFriendArrayName = new JLabel[] { MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name }; // 好友按钮监听 MyFriend1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(1); } }); MyFriend2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(2); } }); MyFriend3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(3); } }); MyFriend4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(4); } }); MyFriend5.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(5); } }); MyFriend6.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(6); } }); MyFriend7.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(7); } }); MyFriend8.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(8); } }); MyFriend9.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(9); } }); moshengren1 = new JButton(new ImageIcon("image/touxiang/149-40.png")); moshengren1Name = new JLabel("小北"); moshengren1Name.setFont(f); moshengrenlan.add(moshengren1); moshengrenlan.add(moshengren1Name); moshengrenlan.setLayout(null); moshengren1.setBounds(0, 0, 44, 44); moshengren1Name.setBounds(44, 0, 44, 44); heimingdan1 = new JButton(new ImageIcon("image/touxiang/150-40.png")); heimingdan1Name = new JLabel("小南"); heimingdan1Name.setFont(f); heimingdanlan.add(heimingdan1); heimingdanlan.add(heimingdan1Name); heimingdanlan.setLayout(null); heimingdan1.setBounds(0, 0, 44, 44); heimingdan1Name.setBounds(44, 0, 44, 44); // 好友栏 陌生人栏 黑名单栏 切换设计 // 规定 当"moshengren1"时陌生人按钮在下面 当"heimingdan1"时黑名单按钮在下面 // 当"moshengren2"时陌生人按钮在上面 当"heimingdan2"时黑名单按钮在上面 moshengren.setName("moshengren1"); heimingdan.setName("heimingdan1"); haoyou.addMouseListener(new MouseAdapter() { }); moshengren.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren1") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 371); qqClientFriendsList1.repaint(); } } }); moshengren_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren2") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 191, 165, 370); qqClientFriendsList1.repaint(); } else { qqClientFriendsList1.add(moshengren); qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 192, 165, 369); qqClientFriendsList1.repaint(); } } }); heimingdan.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 369); qqClientFriendsList1.repaint(); } else if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 370); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); qqClientFriendsList1.repaint(); } } }); heimingdan_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan2") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 370); qqClientFriendsList1.repaint(); } } }); // 获得当前鼠标坐标 qqClientFriendsList1.addMouseMotionListener(new MouseAdapter() { public void mouseMoved(MouseEvent e) { x = e.getX(); y = e.getY(); System.out.println("当前X坐标是:" + x + " Y坐标是:" + y); } }); // 判断边界窗口消失 // qqClientFriendsList1.addMouseListener(new MouseAdapter() { // public void mouseExited(MouseEvent e) { // System.out.println("离开时X、Y坐标是:" + x + " " + y); // if (x > 260 || y > 645 || x < 5) { // qqClientFriendsList1.setVisible(false); // new QqClientFriendsListX03(); // // // } // // } // // }); // } public void chat(int i) { QqClientFriendsChat03 qqchat = new QqClientFriendsChat03(ownerqq, MyFriendArrayName[i-1].getText(), qqs[i - 1]); String str = ownerqq + " " + qqs[i - 1]; System.out.println(str); chats.put(str, qqchat); } public static void main(String[] args) { new QqClientFriendsList03(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub } public void dealMsg(MsgHead msg) { if (msg.getType() == MsgType.command_perdata) { MsgPerData mpd = (MsgPerData) msg; // mpd.getDest(); // mpd.getIcon(); // mpd.getSex(); // mpd.getNickname(); // 刷新界面 ownerqq = mpd.getDest(); flushNick(mpd.getNickname()); flushQqNumber(mpd.getDest()); flushTouxiang(mpd.getIcon()); flushSex(mpd.getSex()); } else if (msg.getType() == MsgType.command_teamList) { MsgTeamList mtl = (MsgTeamList) msg; ArrayList<TeamInfo> teams = mtl.getTeamList(); // for (TeamInfo teamInfo : teams) { TeamInfo teamInfo = teams.get(0); ArrayList<UserInfo> users = teamInfo.getFriendList(); for (UserInfo userInfo : users) { // 可以得到的数据 userInfo.getQq(); userInfo.getNickname(); userInfo.getIcon(); userInfo.getOnLine(); userInfo.getSex(); userInfo.getOnLine(); // 刷新界面 flushFriendsList(users); } } else if (msg.getType() == MsgType.command_find_resp) { MsgFindResp mfr = (MsgFindResp) msg; ArrayList<UserInfo> users = mfr.getUsers(); // qqClientFind03的刷新方法 flushOnlineuser(users); } else if (msg.getType() == MsgType.command_addFriend_Resp) { MsgAddFriendResp mafr = (MsgAddFriendResp) msg; if (mafr.getState() == 0) { flushAddFriend(mafr.getQq(), mafr.getNickName(), mafr.getIcon()); } else { JOptionPane.showMessageDialog(null, mafr.getSrc() + " 拒接你的添加好友请求!"); } } else if (msg.getType() == MsgType.command_onLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_onLine); } else if (msg.getType() == MsgType.command_offLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_offLine); } else if (msg.getType() == MsgType.command_chatText) { MsgChatText mct = (MsgChatText) msg; String key = mct.getDest()+" "+mct.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == mct.getSrc()) { num = i; break; } } //System.out.println("MyFriendArrayName[num].getText()"+MyFriendArrayName[num].getText()+" num:"+num+" key:"+key); qqClientFriendsChat03 = chats.get(key); if (qqClientFriendsChat03 == null) { qqClientFriendsChat03 = new QqClientFriendsChat03(ownerqq, MyFriendArrayName[num].getText(), mct.getSrc()); chats.put(key, qqClientFriendsChat03); } qqClientFriendsChat03.flushFriendMsg(mct.getTime(),mct.getContent(), MyFriendArrayName[num].getText() ); } else if (msg.getType() == MsgType.command_addYou) { MsgAddYou may = (MsgAddYou) msg; may.getSex(); may.getNote(); may.getNickname(); may.getSrc(); // 弹出界面 new QqClientAcceptFriends03(ownerqq).flushAccept(may.getSrc(), may.getNickname(), may.getNote()); }else if(msg.getType() == MsgType.command_vibration){ String key = msg.getDest()+" "+msg.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == msg.getSrc()) { num = i; break; } } qqClientFriendsChat03 = chats.get(key); if (qqClientFriendsChat03 == null) { qqClientFriendsChat03 = new QqClientFriendsChat03(ownerqq, MyFriendArrayName[num].getText(), msg.getSrc()); chats.put(key, qqClientFriendsChat03); } //震动窗口 qqClientFriendsChat03.Vibration(); } } }
package view; // Qq主窗口 import java.awt.AWTException; import java.awt.Font; import java.awt.SystemTray; import java.awt.Toolkit; import java.awt.TrayIcon; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.ScrollPaneConstants; import model.TeamInfo; import model.UserInfo; import msg.MsgAddFriendResp; import msg.MsgAddYou; import msg.MsgChatText; import msg.MsgFindResp; import msg.MsgHead; import msg.MsgPerData; import msg.MsgTeamList; import msg.MsgType; import tools.RoundButton; import client.ClientConServer; import client.ClientMsgListener; @SuppressWarnings("serial") public class QqClientFriendsList02 extends JFrame implements MouseListener, MouseMotionListener, ClientMsgListener { // 定义各变量 private ClientConServer ccs = ClientConServer.getCcs(); private int count = 0; private int ownerqq; private JFrame qqClientFriendsList1; // 聊天界面的map String = "ownerqq otherqq" private Map<String, QqClientFriendsChat02> chats = new HashMap<String, QqClientFriendsChat02>(); private QqClientFind02 qqClientFind02; private QqClientFriendsChat02 qqClientFriendsChat02; private int locationInt; // 从Login传入的 昵称和号码 变成JLabel JLabel nickNameJLabel, qqNumberJLabel, sexJLabel; // 昵称: 账号: JLabel nickNameForeJLabel, qqNumberForeJLabel, sexForeJLabel; // 头像 JButton touxiang1, touxiang2, touxiang3, touxiang4; // 选择左边右边方法 public void setLocationRight() { qqClientFriendsList1.setLocation(1050, 0); locationInt = 1; } public void setLocationLeft() { qqClientFriendsList1.setLocation(0, 0); locationInt = 0; } private JLabel north, south, west, east, top; private JButton haoyou, moshengren, heimingdan, moshengren_, heimingdan_; // 好友列表部分 private JLabel MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name, moshengren1Name, heimingdan1Name; private JButton MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9, moshengren1, heimingdan1; JButton[] MyFriendArray; JLabel[] MyFriendArrayName; int[] qqs = new int[9]; // 定义头像图片 ImageIcon touxiang1ImageIcon, touxiang2ImageIcon, touxiang3ImageIcon, touxiang4ImageIcon; private JScrollPane haoyoulan, moshengrenlan, heimingdanlan; RoundButton exitRoundButton; String nickName; byte touxiang; // 坐标监听 private int x = 4, y = 4; // 头像资料部分 JButton touxiangJButton; QqClientZiliao qqClientZiliao; // 查找 和 退出 按钮 JButton findJButton, exitJButton, hideJButton; // 最小化托盘 JButton jb; TrayIcon trayIcon; SystemTray systemTray; // 刷新方法 // 昵称和号码刷新 public void flushNick(String nickName) { Font f = new Font("SansSerif", Font.BOLD, 16); nickNameJLabel.setText(nickName); nickNameJLabel.setFont(f); qqClientFriendsList1.add(nickNameJLabel); nickNameJLabel.setBounds(153, 10, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushQqNumber(int qqNumber) { Font f = new Font("SansSerif", Font.BOLD, 18); qqNumberJLabel.setFont(f); qqNumberJLabel.setText(qqNumber + " "); qqClientFriendsList1.add(qqNumberJLabel); qqNumberJLabel.setBounds(153, 45, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushSex(String sex) { System.out.println("性别:" + sex); Font f = new Font("SansSerif", Font.BOLD, 18); sexJLabel.setFont(f); sexJLabel.setText(sex); qqClientFriendsList1.add(sexJLabel); sexJLabel.setBounds(153, 80, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushTouxiang(byte touxiang) { if (touxiang == 1) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang1); touxiang1.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 2) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang2); touxiang2.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 3) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang3); touxiang3.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 4) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang4); touxiang4.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } } // 查找在线用户刷新 public void flushOnlineuser(ArrayList<UserInfo> al) { UserInfo userInfo; for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); qqClientFind02.findList.add(userInfo.getQq() + " " + userInfo.getNickname() + " " + userInfo.getSex()); } } // 向列表中添加一个好友 public void flushAddFriend(int qq, String nickname, byte icon) { qqs[count] = qq; System.out.println(count); System.out.println(MyFriendArrayName[count]); MyFriendArrayName[count].setVisible(true); MyFriendArrayName[count].setText(nickname); MyFriendArray[count].setVisible(true); count++; System.out.println("头像参数:" + icon); if (icon == 1) { MyFriendArray[count].setIcon(touxiang1ImageIcon); } if (icon == 2) { MyFriendArray[count].setIcon(touxiang2ImageIcon); } if (icon == 3) { MyFriendArray[count].setIcon(touxiang3ImageIcon); } if (icon == 4) { MyFriendArray[count].setIcon(touxiang4ImageIcon); } MyFriendArrayName[count].setText(nickname); } // 刷新好友列表 public void flushFriendsList(ArrayList<UserInfo> al) { UserInfo userInfo; count = al.size(); // 第一步获取好友个数 for (int i = 0; i < al.size(); i++) { UserInfo user = al.get(i); MyFriendArray[i].setVisible(true); MyFriendArrayName[i].setVisible(true); qqs[i] = user.getQq(); } // 第二步给好友赋予头像和昵称 for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); if (userInfo.getIcon() == 1) { MyFriendArray[i].setIcon(touxiang1ImageIcon); } if (userInfo.getIcon() == 2) { MyFriendArray[i].setIcon(touxiang2ImageIcon); } if (userInfo.getIcon() == 3) { MyFriendArray[i].setIcon(touxiang3ImageIcon); } if (userInfo.getIcon() == 4) { MyFriendArray[i].setIcon(touxiang4ImageIcon); } if(userInfo.getOnLine()==1) MyFriendArray[i].setEnabled(false); MyFriendArrayName[i].setText(userInfo.getNickname()); } } // 好友上线或下线刷新 public void flushOnlineOffline(int qq,int state){ // 遍历 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == qq) { num = i; break; } } if(state==MsgType.command_onLine){ //上线 JOptionPane.showMessageDialog(null, qq+"用户已经上线"); MyFriendArray[num].setEnabled(true); }else{ //下线 JOptionPane.showMessageDialog(null, qq+"用户已经下线"); MyFriendArray[num].setEnabled(false); } } public QqClientFriendsList02() { // 初始化 qqClientFriendsList1 = new JFrame(); haoyoulan = new JScrollPane(); moshengrenlan = new JScrollPane(); heimingdanlan = new JScrollPane(); touxiangJButton = new JButton(new ImageIcon( "image/listJiemian02/touxiang.jpg")); qqClientZiliao = new QqClientZiliao(); findJButton = new JButton(new ImageIcon("image/listJiemian02/find.jpg")); exitJButton = new JButton(new ImageIcon("image/listJiemian02/exit.jpg")); hideJButton = new JButton(new ImageIcon("image/listJiemian02/hide.jpg")); // 设置 字体 大小 Font f = new Font("SansSerif", Font.BOLD, 16); top = new JLabel(new ImageIcon("image/listJiemian02/top.jpg")); north = new JLabel(new ImageIcon("image/listJiemian02/up.jpg")); south = new JLabel(new ImageIcon("image/listJiemian02/down.jpg")); west = new JLabel(new ImageIcon("image/listJiemian02/left.jpg")); east = new JLabel(new ImageIcon("image/listJiemian02/right.jpg")); haoyou = new JButton(new ImageIcon("image/listJiemian02/haoyou.jpg")); moshengren = new JButton(new ImageIcon( "image/listJiemian02/moshengren.jpg")); moshengren_ = new JButton(new ImageIcon( "image/listJiemian02/moshengren_.jpg")); heimingdan = new JButton(new ImageIcon( "image/listJiemian02/heimingdan.jpg")); heimingdan_ = new JButton(new ImageIcon( "image/listJiemian02/heimingdan_.jpg")); // 最小化托盘功能 systemTray = SystemTray.getSystemTray(); try { trayIcon = new TrayIcon(ImageIO.read(new File("0.gif"))); systemTray.add(trayIcon); // 设置托盘的图标,0.gif与该类文件同一目录 } catch (IOException e1) { e1.printStackTrace(); } catch (AWTException e2) { e2.printStackTrace(); } // 昵称 账号初始化 nickNameJLabel = new JLabel(); qqNumberJLabel = new JLabel(); sexJLabel = new JLabel(); nickNameForeJLabel = new JLabel("昵称:"); qqNumberForeJLabel = new JLabel("账号:"); sexForeJLabel = new JLabel("性别:"); // 头像初始化 touxiang1 = new JButton(new ImageIcon( "image/listJiemian02/touxiang1.jpg")); touxiang2 = new JButton(new ImageIcon( "image/listJiemian02/touxiang2.jpg")); touxiang3 = new JButton(new ImageIcon( "image/listJiemian02/touxiang3.jpg")); touxiang4 = new JButton(new ImageIcon( "image/listJiemian02/touxiang4.jpg")); // 头像图片初始化 touxiang1ImageIcon = new ImageIcon("image/loginJiemian/touxiang-1.png"); touxiang2ImageIcon = new ImageIcon("image/loginJiemian/touxiang-2.png"); touxiang3ImageIcon = new ImageIcon("image/loginJiemian/touxiang-3.png"); touxiang4ImageIcon = new ImageIcon("image/loginJiemian/touxiang-4.png"); // 窗口设置 Toolkit toolkit = Toolkit.getDefaultToolkit(); qqClientFriendsList1.setIconImage(toolkit.getImage("1.png")); qqClientFriendsList1.setSize(265, 700); // qqClientFriendsList1.setLocation(1050, 0); qqClientFriendsList1.setUndecorated(true); Drag drag = new Drag(qqClientFriendsList1); drag.setDragable(); qqClientFriendsList1.setVisible(true); qqClientFriendsList1.setResizable(false); qqClientFriendsList1.setDefaultCloseOperation(EXIT_ON_CLOSE); qqClientFriendsList1.setLayout(null); qqClientFriendsList1.setTitle("LZChat"); // 昵称 账号设置 nickNameForeJLabel.setFont(f); qqNumberForeJLabel.setFont(f); sexForeJLabel.setFont(f); qqClientFriendsList1.add(nickNameForeJLabel); nickNameForeJLabel.setBounds(110, 10, 53, 20); qqClientFriendsList1.add(qqNumberForeJLabel); qqNumberForeJLabel.setBounds(110, 45, 53, 20); qqClientFriendsList1.add(sexForeJLabel); sexForeJLabel.setBounds(110, 80, 53, 20); // 边界加入框架 qqClientFriendsList1.add(top); qqClientFriendsList1.add(north); qqClientFriendsList1.add(south); qqClientFriendsList1.add(west); qqClientFriendsList1.add(east); qqClientFriendsList1.add(haoyoulan); qqClientFriendsList1.add(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); // 好友栏 haoyoulan .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); haoyoulan.setBounds(50, 192, 165, 371); haoyoulan.setLayout(null); //nickName = "昵称"; // 头像按钮 qqClientFriendsList1.add(touxiangJButton); touxiangJButton.setBounds(0, 0, 100, 100); touxiangJButton.addMouseListener(new MouseAdapter() { public void mouseExited(MouseEvent e) { QqClientZiliao.qqClientZiliao.setVisible(false); } }); // 退出和查找按钮 qqClientFriendsList1.add(findJButton); qqClientFriendsList1.add(exitJButton); qqClientFriendsList1.add(hideJButton); findJButton.setBounds(205, 50, 60, 50); exitJButton.setBounds(205, 0, 60, 50); hideJButton.setBounds(215, 100, 50, 45); findJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("查找"); if (locationInt == 0) { qqClientFind02 = new QqClientFind02(ownerqq); qqClientFind02.setQqClientFindJFrameLeft(); } if (locationInt == 1) { qqClientFind02 = new QqClientFind02(ownerqq); qqClientFind02.setQqClientFindJFrameRight(); } MsgHead msg = new MsgHead(); msg.setType(MsgType.command_find); msg.setTotalLen(4 + 1 + 4 + 4); msg.setDest(MsgType.SERVER_QQ_NUMBER); msg.setSrc(ownerqq); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出"); System.exit(0); } }); hideJButton.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { System.out.println("隐藏托盘"); qqClientFriendsList1.setVisible(false);// 窗口最小化时dispose该窗口 } }); trayIcon.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) // 双击托盘窗口再现 setExtendedState(JFrame.NORMAL); qqClientFriendsList1.setVisible(true); } }); // 边界位置设定 top.setBounds(100, 0, 105, 100); north.setBounds(50, 100, 165, 45); south.setBounds(50, 655, 165, 45); west.setBounds(0, 100, 50, 600); east.setBounds(215, 145, 50, 555); // 按钮加入框架 qqClientFriendsList1.add(haoyou); qqClientFriendsList1.add(moshengren); qqClientFriendsList1.add(heimingdan); haoyou.setBounds(50, 145, 165, 48); moshengren.setBounds(50, 562, 165, 48); heimingdan.setBounds(50, 607, 165, 48); // addMouseListener(this); addMouseMotionListener(this); // 初始化好友 MyFriend1 = new JButton(new ImageIcon("image/touxiang/102-40.png")); MyFriend1Name = new JLabel(nickName); haoyoulan.add(MyFriend1Name); MyFriend1Name.setFont(f); MyFriend1Name.setBounds(44, 0, 44, 44); haoyoulan.add(MyFriend1); MyFriend1.setBounds(0, 0, 44, 44); MyFriend2 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend2Name = new JLabel(nickName); haoyoulan.add(MyFriend2Name); MyFriend2Name.setFont(f); MyFriend2Name.setBounds(44, 44, 44, 44); haoyoulan.add(MyFriend2); MyFriend2.setBounds(0, 44, 44, 44); MyFriend3 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend3Name = new JLabel(nickName); haoyoulan.add(MyFriend3Name); MyFriend3Name.setFont(f); MyFriend3Name.setBounds(44, 88, 44, 44); haoyoulan.add(MyFriend3); MyFriend3.setBounds(0, 88, 44, 44); MyFriend4 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend4Name = new JLabel(nickName); haoyoulan.add(MyFriend4Name); MyFriend4Name.setFont(f); MyFriend4Name.setBounds(44, 132, 44, 44); haoyoulan.add(MyFriend4); MyFriend4.setBounds(0, 132, 44, 44); MyFriend5 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend5Name = new JLabel(nickName); haoyoulan.add(MyFriend5Name); MyFriend5Name.setFont(f); MyFriend5Name.setBounds(44, 176, 44, 44); haoyoulan.add(MyFriend5); MyFriend5.setBounds(0, 176, 44, 44); MyFriend6 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend6Name = new JLabel(nickName); haoyoulan.add(MyFriend6Name); MyFriend6Name.setFont(f); MyFriend6Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend6); MyFriend6.setBounds(0, 220, 44, 44); MyFriend7 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend7Name = new JLabel(nickName); haoyoulan.add(MyFriend7Name); MyFriend7Name.setFont(f); MyFriend7Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend7); MyFriend7.setBounds(0, 220, 44, 44); MyFriend8 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend8Name = new JLabel(nickName); haoyoulan.add(MyFriend8Name); MyFriend8Name.setFont(f); MyFriend8Name.setBounds(44, 264, 44, 44); haoyoulan.add(MyFriend8); MyFriend8.setBounds(0, 264, 44, 44); MyFriend9 = new JButton(new ImageIcon("image/touxiang/148-40.png")); MyFriend9Name = new JLabel(nickName); haoyoulan.add(MyFriend9Name); MyFriend9Name.setFont(f); MyFriend9Name.setBounds(44, 308, 44, 44); haoyoulan.add(MyFriend9); MyFriend9.setBounds(0, 308, 44, 44); // // 开始的时候全部设为不可视 MyFriend1.setVisible(false); MyFriend2.setVisible(false); MyFriend3.setVisible(false); MyFriend4.setVisible(false); MyFriend5.setVisible(false); MyFriend6.setVisible(false); MyFriend7.setVisible(false); MyFriend8.setVisible(false); MyFriend9.setVisible(false); MyFriend1Name.setVisible(false); MyFriend2Name.setVisible(false); MyFriend3Name.setVisible(false); MyFriend4Name.setVisible(false); MyFriend5Name.setVisible(false); MyFriend6Name.setVisible(false); MyFriend7Name.setVisible(false); MyFriend8Name.setVisible(false); MyFriend9Name.setVisible(false); MyFriendArray = new JButton[] { MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9 }; MyFriendArrayName = new JLabel[] { MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name }; // 好友按钮监听 MyFriend1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(1); } }); MyFriend2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(2); } }); MyFriend3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(3); } }); MyFriend4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(4); } }); MyFriend5.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(5); } }); MyFriend6.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(6); } }); MyFriend7.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(7); } }); MyFriend8.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(8); } }); MyFriend9.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(9); } }); moshengren1 = new JButton(new ImageIcon("image/touxiang/149-40.png")); moshengren1Name = new JLabel("小北"); moshengren1Name.setFont(f); moshengrenlan.add(moshengren1); moshengrenlan.add(moshengren1Name); moshengrenlan.setLayout(null); moshengren1.setBounds(0, 0, 44, 44); moshengren1Name.setBounds(44, 0, 44, 44); heimingdan1 = new JButton(new ImageIcon("image/touxiang/150-40.png")); heimingdan1Name = new JLabel("小南"); heimingdan1Name.setFont(f); heimingdanlan.add(heimingdan1); heimingdanlan.add(heimingdan1Name); heimingdanlan.setLayout(null); heimingdan1.setBounds(0, 0, 44, 44); heimingdan1Name.setBounds(44, 0, 44, 44); // 好友栏 陌生人栏 黑名单栏 切换设计 // 规定 当"moshengren1"时陌生人按钮在下面 当"heimingdan1"时黑名单按钮在下面 // 当"moshengren2"时陌生人按钮在上面 当"heimingdan2"时黑名单按钮在上面 moshengren.setName("moshengren1"); heimingdan.setName("heimingdan1"); haoyou.addMouseListener(new MouseAdapter() { }); moshengren.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren1") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 371); qqClientFriendsList1.repaint(); } } }); moshengren_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren2") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 191, 165, 370); qqClientFriendsList1.repaint(); } else { qqClientFriendsList1.add(moshengren); qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 192, 165, 369); qqClientFriendsList1.repaint(); } } }); heimingdan.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 369); qqClientFriendsList1.repaint(); } else if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 370); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); qqClientFriendsList1.repaint(); } } }); heimingdan_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan2") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 370); qqClientFriendsList1.repaint(); } } }); // 获得当前鼠标坐标 qqClientFriendsList1.addMouseMotionListener(new MouseAdapter() { public void mouseMoved(MouseEvent e) { x = e.getX(); y = e.getY(); System.out.println("当前X坐标是:" + x + " Y坐标是:" + y); } }); // 判断边界窗口消失 // qqClientFriendsList1.addMouseListener(new MouseAdapter() { // public void mouseExited(MouseEvent e) { // System.out.println("离开时X、Y坐标是:" + x + " " + y); // if (x > 260 || y > 645 || x < 5) { // qqClientFriendsList1.setVisible(false); // new QqClientFriendsListX02(); // // // } // // } // // }); // } public void chat(int i) { QqClientFriendsChat02 qqchat = new QqClientFriendsChat02(ownerqq, MyFriendArrayName[i-1].getText(), qqs[i - 1]); String str = ownerqq + " " + qqs[i - 1]; System.out.println(str); chats.put(str, qqchat); } public static void main(String[] args) { new QqClientFriendsList02(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub } public void dealMsg(MsgHead msg) { if (msg.getType() == MsgType.command_perdata) { MsgPerData mpd = (MsgPerData) msg; // mpd.getDest(); // mpd.getIcon(); // mpd.getSex(); // mpd.getNickname(); // 刷新界面 ownerqq = mpd.getDest(); flushNick(mpd.getNickname()); flushQqNumber(mpd.getDest()); flushTouxiang(mpd.getIcon()); flushSex(mpd.getSex()); } else if (msg.getType() == MsgType.command_teamList) { MsgTeamList mtl = (MsgTeamList) msg; ArrayList<TeamInfo> teams = mtl.getTeamList(); // for (TeamInfo teamInfo : teams) { TeamInfo teamInfo = teams.get(0); ArrayList<UserInfo> users = teamInfo.getFriendList(); for (UserInfo userInfo : users) { // 可以得到的数据 userInfo.getQq(); userInfo.getNickname(); userInfo.getIcon(); userInfo.getOnLine(); userInfo.getSex(); userInfo.getOnLine(); // 刷新界面 flushFriendsList(users); } } else if (msg.getType() == MsgType.command_find_resp) { MsgFindResp mfr = (MsgFindResp) msg; ArrayList<UserInfo> users = mfr.getUsers(); // qqClientFind02的刷新方法 flushOnlineuser(users); } else if (msg.getType() == MsgType.command_addFriend_Resp) { MsgAddFriendResp mafr = (MsgAddFriendResp) msg; if (mafr.getState() == 0) { flushAddFriend(mafr.getQq(), mafr.getNickName(), mafr.getIcon()); } else { JOptionPane.showMessageDialog(null, mafr.getSrc() + " 拒接你的添加好友请求!"); } } else if (msg.getType() == MsgType.command_onLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_onLine); } else if (msg.getType() == MsgType.command_offLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_offLine); } else if (msg.getType() == MsgType.command_chatText) { MsgChatText mct = (MsgChatText) msg; String key = mct.getDest()+" "+mct.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == mct.getSrc()) { num = i; break; } } //System.out.println("MyFriendArrayName[num].getText()"+MyFriendArrayName[num].getText()+" num:"+num+" key:"+key); qqClientFriendsChat02 = chats.get(key); if (qqClientFriendsChat02 == null) { qqClientFriendsChat02 = new QqClientFriendsChat02(ownerqq, MyFriendArrayName[num].getText(), mct.getSrc()); chats.put(key, qqClientFriendsChat02); } qqClientFriendsChat02.flushFriendMsg(mct.getTime(),mct.getContent(), MyFriendArrayName[num].getText() ); } else if (msg.getType() == MsgType.command_addYou) { MsgAddYou may = (MsgAddYou) msg; may.getSex(); may.getNote(); may.getNickname(); may.getSrc(); // 弹出界面 new QqClientAcceptFriends02(ownerqq).flushAccept(may.getSrc(), may.getNickname(), may.getNote()); }else if(msg.getType() == MsgType.command_vibration){ String key = msg.getDest()+" "+msg.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == msg.getSrc()) { num = i; break; } } qqClientFriendsChat02 = chats.get(key); if (qqClientFriendsChat02 == null) { qqClientFriendsChat02 = new QqClientFriendsChat02(ownerqq, MyFriendArrayName[num].getText(), msg.getSrc()); chats.put(key, qqClientFriendsChat02); } //震动窗口 qqClientFriendsChat02.Vibration(); } } }
package view; // Qq主窗口 import java.awt.AWTException; import java.awt.Font; import java.awt.SystemTray; import java.awt.Toolkit; import java.awt.TrayIcon; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.ScrollPaneConstants; import model.TeamInfo; import model.UserInfo; import msg.MsgAddFriendResp; import msg.MsgAddYou; import msg.MsgChatText; import msg.MsgFindResp; import msg.MsgHead; import msg.MsgPerData; import msg.MsgTeamList; import msg.MsgType; import tools.RoundButton; import client.ClientConServer; import client.ClientMsgListener; @SuppressWarnings("serial") public class QqClientFriendsList01 extends JFrame implements MouseListener, MouseMotionListener, ClientMsgListener { // 定义各变量 private ClientConServer ccs = ClientConServer.getCcs(); private int count = 0; private int ownerqq; private JFrame qqClientFriendsList1; // 聊天界面的map String = "ownerqq otherqq" private Map<String, QqClientFriendsChat01> chats = new HashMap<String, QqClientFriendsChat01>(); private QqClientFind01 qqClientFind01; private QqClientFriendsChat01 qqClientFriendsChat01; private int locationInt; // 从Login传入的 昵称和号码 变成JLabel JLabel nickNameJLabel, qqNumberJLabel, sexJLabel; // 昵称: 账号: JLabel nickNameForeJLabel, qqNumberForeJLabel, sexForeJLabel; // 头像 JButton touxiang1, touxiang2, touxiang3, touxiang4; // 选择左边右边方法 public void setLocationRight() { qqClientFriendsList1.setLocation(1050, 0); locationInt = 1; } public void setLocationLeft() { qqClientFriendsList1.setLocation(0, 0); locationInt = 0; } private JLabel north, south, west, east, top; private JButton haoyou, moshengren, heimingdan, moshengren_, heimingdan_; // 好友列表部分 private JLabel MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name, moshengren1Name, heimingdan1Name; private JButton MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9, moshengren1, heimingdan1; JButton[] MyFriendArray; JLabel[] MyFriendArrayName; int[] qqs = new int[9]; // 定义头像图片 ImageIcon touxiang1ImageIcon, touxiang2ImageIcon, touxiang3ImageIcon, touxiang4ImageIcon; private JScrollPane haoyoulan, moshengrenlan, heimingdanlan; RoundButton exitRoundButton; String nickName; byte touxiang; // 坐标监听 private int x = 4, y = 4; // 头像资料部分 JButton touxiangJButton; QqClientZiliao qqClientZiliao; // 查找 和 退出 按钮 JButton findJButton, exitJButton, hideJButton; // 最小化托盘 JButton jb; TrayIcon trayIcon; SystemTray systemTray; // 刷新方法 // 昵称和号码刷新 public void flushNick(String nickName) { Font f = new Font("SansSerif", Font.BOLD, 16); nickNameJLabel.setText(nickName); nickNameJLabel.setFont(f); qqClientFriendsList1.add(nickNameJLabel); nickNameJLabel.setBounds(153, 10, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushQqNumber(int qqNumber) { Font f = new Font("SansSerif", Font.BOLD, 18); qqNumberJLabel.setFont(f); qqNumberJLabel.setText(qqNumber + " "); qqClientFriendsList1.add(qqNumberJLabel); qqNumberJLabel.setBounds(153, 45, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushSex(String sex) { System.out.println("性别:" + sex); Font f = new Font("SansSerif", Font.BOLD, 18); sexJLabel.setFont(f); sexJLabel.setText(sex); qqClientFriendsList1.add(sexJLabel); sexJLabel.setBounds(153, 80, 80, 20); qqClientFriendsList1.remove(top); qqClientFriendsList1.add(top); top.setBounds(100, 0, 105, 100); } public void flushTouxiang(byte touxiang) { if (touxiang == 1) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang1); touxiang1.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 2) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang2); touxiang2.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 3) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang3); touxiang3.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } if (touxiang == 4) { qqClientFriendsList1.remove(touxiangJButton); qqClientFriendsList1.add(touxiang4); touxiang4.setBounds(0, 0, 100, 100); qqClientFriendsList1.repaint(); } } // 查找在线用户刷新 public void flushOnlineuser(ArrayList<UserInfo> al) { UserInfo userInfo; for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); qqClientFind01.findList.add(userInfo.getQq() + " " + userInfo.getNickname() + " " + userInfo.getSex()); } } // 向列表中添加一个好友 public void flushAddFriend(int qq, String nickname, byte icon) { qqs[count] = qq; System.out.println(count); System.out.println(MyFriendArrayName[count]); MyFriendArrayName[count].setVisible(true); MyFriendArrayName[count].setText(nickname); MyFriendArray[count].setVisible(true); // count++; // System.out.println("头像参数:" + icon); // if (icon == 1) { // MyFriendArray[count].setIcon(touxiang1ImageIcon); // } // if (icon == 2) { // MyFriendArray[count].setIcon(touxiang2ImageIcon); // } // if (icon == 3) { // MyFriendArray[count].setIcon(touxiang3ImageIcon); // } // if (icon == 4) { // MyFriendArray[count].setIcon(touxiang4ImageIcon); // } } // 刷新好友列表 public void flushFriendsList(ArrayList<UserInfo> al) { UserInfo userInfo; count = al.size(); // 第一步获取好友个数 for (int i = 0; i < al.size(); i++) { UserInfo user = al.get(i); MyFriendArray[i].setVisible(true); MyFriendArrayName[i].setVisible(true); qqs[i] = user.getQq(); } // 第二步给好友赋予头像和昵称 for (int i = 0; i < al.size(); i++) { userInfo = al.get(i); if (userInfo.getIcon() == 1) { MyFriendArray[i].setIcon(touxiang1ImageIcon); } if (userInfo.getIcon() == 2) { MyFriendArray[i].setIcon(touxiang2ImageIcon); } if (userInfo.getIcon() == 3) { MyFriendArray[i].setIcon(touxiang3ImageIcon); } if (userInfo.getIcon() == 4) { MyFriendArray[i].setIcon(touxiang4ImageIcon); } if(userInfo.getOnLine()==1) MyFriendArray[i].setEnabled(false); MyFriendArrayName[i].setText(userInfo.getNickname()); } } // 好友上线或下线刷新 public void flushOnlineOffline(int qq,int state){ // 遍历 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == qq) { num = i; break; } } if(state==MsgType.command_onLine){ //上线 JOptionPane.showMessageDialog(null, qq+"用户已经上线"); MyFriendArray[num].setEnabled(true); }else{ //下线 JOptionPane.showMessageDialog(null, qq+"用户已经下线"); MyFriendArray[num].setEnabled(false); } } public QqClientFriendsList01() { // 初始化 qqClientFriendsList1 = new JFrame(); haoyoulan = new JScrollPane(); moshengrenlan = new JScrollPane(); heimingdanlan = new JScrollPane(); touxiangJButton = new JButton(new ImageIcon( "image/listJiemian01/touxiang.jpg")); qqClientZiliao = new QqClientZiliao(); findJButton = new JButton(new ImageIcon("image/listJiemian01/find.jpg")); exitJButton = new JButton(new ImageIcon("image/listJiemian01/exit.jpg")); hideJButton = new JButton(new ImageIcon("image/listJiemian01/hide.jpg")); // 设置 字体 大小 Font f = new Font("SansSerif", Font.BOLD, 16); top = new JLabel(new ImageIcon("image/listJiemian01/top.jpg")); north = new JLabel(new ImageIcon("image/listJiemian01/up.jpg")); south = new JLabel(new ImageIcon("image/listJiemian01/down.jpg")); west = new JLabel(new ImageIcon("image/listJiemian01/left.jpg")); east = new JLabel(new ImageIcon("image/listJiemian01/right.jpg")); haoyou = new JButton(new ImageIcon("image/listJiemian01/haoyou.jpg")); moshengren = new JButton(new ImageIcon( "image/listJiemian01/moshengren.jpg")); moshengren_ = new JButton(new ImageIcon( "image/listJiemian01/moshengren_.jpg")); heimingdan = new JButton(new ImageIcon( "image/listJiemian01/heimingdan.jpg")); heimingdan_ = new JButton(new ImageIcon( "image/listJiemian01/heimingdan_.jpg")); // 最小化托盘功能 systemTray = SystemTray.getSystemTray(); try { trayIcon = new TrayIcon(ImageIO.read(new File("0.gif"))); systemTray.add(trayIcon); // 设置托盘的图标,0.gif与该类文件同一目录 } catch (IOException e1) { e1.printStackTrace(); } catch (AWTException e2) { e2.printStackTrace(); } // 昵称 账号初始化 nickNameJLabel = new JLabel(); qqNumberJLabel = new JLabel(); sexJLabel = new JLabel(); nickNameForeJLabel = new JLabel("昵称:"); qqNumberForeJLabel = new JLabel("账号:"); sexForeJLabel = new JLabel("性别:"); // 头像初始化 touxiang1 = new JButton(new ImageIcon( "image/listJiemian01/touxiang1.jpg")); touxiang2 = new JButton(new ImageIcon( "image/listJiemian01/touxiang2.jpg")); touxiang3 = new JButton(new ImageIcon( "image/listJiemian01/touxiang3.jpg")); touxiang4 = new JButton(new ImageIcon( "image/listJiemian01/touxiang4.jpg")); // 头像图片初始化 touxiang1ImageIcon = new ImageIcon("image/loginJiemian/touxiang-1.png"); touxiang2ImageIcon = new ImageIcon("image/loginJiemian/touxiang-2.png"); touxiang3ImageIcon = new ImageIcon("image/loginJiemian/touxiang-3.png"); touxiang4ImageIcon = new ImageIcon("image/loginJiemian/touxiang-4.png"); // 窗口设置 Toolkit toolkit = Toolkit.getDefaultToolkit(); qqClientFriendsList1.setIconImage(toolkit.getImage("1.png")); qqClientFriendsList1.setSize(265, 700); // qqClientFriendsList1.setLocation(1050, 0); qqClientFriendsList1.setUndecorated(true); Drag drag = new Drag(qqClientFriendsList1); drag.setDragable(); qqClientFriendsList1.setVisible(true); qqClientFriendsList1.setResizable(false); qqClientFriendsList1.setDefaultCloseOperation(EXIT_ON_CLOSE); qqClientFriendsList1.setLayout(null); qqClientFriendsList1.setTitle("LZChat"); // 昵称 账号设置 nickNameForeJLabel.setFont(f); qqNumberForeJLabel.setFont(f); sexForeJLabel.setFont(f); qqClientFriendsList1.add(nickNameForeJLabel); nickNameForeJLabel.setBounds(110, 10, 53, 20); qqClientFriendsList1.add(qqNumberForeJLabel); qqNumberForeJLabel.setBounds(110, 45, 53, 20); qqClientFriendsList1.add(sexForeJLabel); sexForeJLabel.setBounds(110, 80, 53, 20); // 边界加入框架 qqClientFriendsList1.add(top); qqClientFriendsList1.add(north); qqClientFriendsList1.add(south); qqClientFriendsList1.add(west); qqClientFriendsList1.add(east); qqClientFriendsList1.add(haoyoulan); qqClientFriendsList1.add(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); // 好友栏 haoyoulan .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); haoyoulan.setBounds(50, 192, 165, 371); haoyoulan.setLayout(null); //nickName = "昵称"; // 头像按钮 qqClientFriendsList1.add(touxiangJButton); touxiangJButton.setBounds(0, 0, 100, 100); touxiangJButton.addMouseListener(new MouseAdapter() { public void mouseExited(MouseEvent e) { QqClientZiliao.qqClientZiliao.setVisible(false); } }); // 退出和查找按钮 qqClientFriendsList1.add(findJButton); qqClientFriendsList1.add(exitJButton); qqClientFriendsList1.add(hideJButton); findJButton.setBounds(205, 50, 60, 50); exitJButton.setBounds(205, 0, 60, 50); hideJButton.setBounds(215, 100, 50, 45); findJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("查找"); if(qqClientFind01==null){ qqClientFind01 = new QqClientFind01(ownerqq); } if (locationInt == 0) { qqClientFind01.setQqClientFindJFrameLeft(); } if (locationInt == 1) { qqClientFind01.setQqClientFindJFrameRight(); } MsgHead msg = new MsgHead(); msg.setType(MsgType.command_find); msg.setTotalLen(4 + 1 + 4 + 4); msg.setDest(MsgType.SERVER_QQ_NUMBER); msg.setSrc(ownerqq); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出"); System.exit(0); } }); hideJButton.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { System.out.println("隐藏托盘"); qqClientFriendsList1.setVisible(false);// 窗口最小化时dispose该窗口 } }); trayIcon.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) // 双击托盘窗口再现 setExtendedState(JFrame.NORMAL); qqClientFriendsList1.setVisible(true); } }); // 边界位置设定 top.setBounds(100, 0, 105, 100); north.setBounds(50, 100, 165, 45); south.setBounds(50, 655, 165, 45); west.setBounds(0, 100, 50, 600); east.setBounds(215, 145, 50, 555); // 按钮加入框架 qqClientFriendsList1.add(haoyou); qqClientFriendsList1.add(moshengren); qqClientFriendsList1.add(heimingdan); haoyou.setBounds(50, 145, 165, 48); moshengren.setBounds(50, 562, 165, 48); heimingdan.setBounds(50, 607, 165, 48); // addMouseListener(this); addMouseMotionListener(this); // 初始化好友 MyFriend1 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend1Name = new JLabel(nickName); haoyoulan.add(MyFriend1Name); MyFriend1Name.setFont(f); MyFriend1Name.setBounds(44, 0, 44, 44); haoyoulan.add(MyFriend1); MyFriend1.setBounds(0, 0, 44, 44); MyFriend2 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend2Name = new JLabel(nickName); haoyoulan.add(MyFriend2Name); MyFriend2Name.setFont(f); MyFriend2Name.setBounds(44, 44, 44, 44); haoyoulan.add(MyFriend2); MyFriend2.setBounds(0, 44, 44, 44); MyFriend3 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend3Name = new JLabel(nickName); haoyoulan.add(MyFriend3Name); MyFriend3Name.setFont(f); MyFriend3Name.setBounds(44, 88, 44, 44); haoyoulan.add(MyFriend3); MyFriend3.setBounds(0, 88, 44, 44); MyFriend4 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend4Name = new JLabel(nickName); haoyoulan.add(MyFriend4Name); MyFriend4Name.setFont(f); MyFriend4Name.setBounds(44, 132, 44, 44); haoyoulan.add(MyFriend4); MyFriend4.setBounds(0, 132, 44, 44); MyFriend5 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend5Name = new JLabel(nickName); haoyoulan.add(MyFriend5Name); MyFriend5Name.setFont(f); MyFriend5Name.setBounds(44, 176, 44, 44); haoyoulan.add(MyFriend5); MyFriend5.setBounds(0, 176, 44, 44); MyFriend6 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend6Name = new JLabel(nickName); haoyoulan.add(MyFriend6Name); MyFriend6Name.setFont(f); MyFriend6Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend6); MyFriend6.setBounds(0, 220, 44, 44); MyFriend7 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend7Name = new JLabel(nickName); haoyoulan.add(MyFriend7Name); MyFriend7Name.setFont(f); MyFriend7Name.setBounds(44, 220, 44, 44); haoyoulan.add(MyFriend7); MyFriend7.setBounds(0, 220, 44, 44); MyFriend8 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend8Name = new JLabel(nickName); haoyoulan.add(MyFriend8Name); MyFriend8Name.setFont(f); MyFriend8Name.setBounds(44, 264, 44, 44); haoyoulan.add(MyFriend8); MyFriend8.setBounds(0, 264, 44, 44); MyFriend9 = new JButton(new ImageIcon("image/loginJiemian/touxiang-1.png")); MyFriend9Name = new JLabel(nickName); haoyoulan.add(MyFriend9Name); MyFriend9Name.setFont(f); MyFriend9Name.setBounds(44, 308, 44, 44); haoyoulan.add(MyFriend9); MyFriend9.setBounds(0, 308, 44, 44); // // 开始的时候全部设为不可视 MyFriend1.setVisible(false); MyFriend2.setVisible(false); MyFriend3.setVisible(false); MyFriend4.setVisible(false); MyFriend5.setVisible(false); MyFriend6.setVisible(false); MyFriend7.setVisible(false); MyFriend8.setVisible(false); MyFriend9.setVisible(false); MyFriend1Name.setVisible(false); MyFriend2Name.setVisible(false); MyFriend3Name.setVisible(false); MyFriend4Name.setVisible(false); MyFriend5Name.setVisible(false); MyFriend6Name.setVisible(false); MyFriend7Name.setVisible(false); MyFriend8Name.setVisible(false); MyFriend9Name.setVisible(false); MyFriendArray = new JButton[] { MyFriend1, MyFriend2, MyFriend3, MyFriend4, MyFriend5, MyFriend6, MyFriend7, MyFriend8, MyFriend9 }; MyFriendArrayName = new JLabel[] { MyFriend1Name, MyFriend2Name, MyFriend3Name, MyFriend4Name, MyFriend5Name, MyFriend6Name, MyFriend7Name, MyFriend8Name, MyFriend9Name }; // 好友按钮监听 MyFriend1.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(1); } }); MyFriend2.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(2); } }); MyFriend3.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(3); } }); MyFriend4.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(4); } }); MyFriend5.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(5); } }); MyFriend6.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(6); } }); MyFriend7.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(7); } }); MyFriend8.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(8); } }); MyFriend9.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { chat(9); } }); moshengren1 = new JButton(new ImageIcon("image/touxiang/149-40.png")); moshengren1Name = new JLabel("小北"); moshengren1Name.setFont(f); moshengrenlan.add(moshengren1); moshengrenlan.add(moshengren1Name); moshengrenlan.setLayout(null); moshengren1.setBounds(0, 0, 44, 44); moshengren1Name.setBounds(44, 0, 44, 44); heimingdan1 = new JButton(new ImageIcon("image/touxiang/150-40.png")); heimingdan1Name = new JLabel("小南"); heimingdan1Name.setFont(f); heimingdanlan.add(heimingdan1); heimingdanlan.add(heimingdan1Name); heimingdanlan.setLayout(null); heimingdan1.setBounds(0, 0, 44, 44); heimingdan1Name.setBounds(44, 0, 44, 44); // 好友栏 陌生人栏 黑名单栏 切换设计 // 规定 当"moshengren1"时陌生人按钮在下面 当"heimingdan1"时黑名单按钮在下面 // 当"moshengren2"时陌生人按钮在上面 当"heimingdan2"时黑名单按钮在上面 moshengren.setName("moshengren1"); heimingdan.setName("heimingdan1"); haoyou.addMouseListener(new MouseAdapter() { }); moshengren.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren1") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 371); qqClientFriendsList1.repaint(); } } }); moshengren_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (moshengren.getName().equals("moshengren2") && heimingdan.getName().equals("heimingdan1")) { qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 191, 165, 370); qqClientFriendsList1.repaint(); } else { qqClientFriendsList1.add(moshengren); qqClientFriendsList1.remove(moshengren_); qqClientFriendsList1.add(moshengren); moshengren.setBounds(50, 560, 165, 48); moshengren.setName("moshengren1"); qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(haoyoulan); haoyoulan.setBounds(50, 192, 165, 369); qqClientFriendsList1.repaint(); } } }); heimingdan.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren1")) { qqClientFriendsList1.remove(moshengren); qqClientFriendsList1.add(moshengren_); moshengren_.setBounds(50, 190, 165, 48); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); moshengren.setName("moshengren2"); qqClientFriendsList1.remove(haoyoulan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 369); qqClientFriendsList1.repaint(); } else if (heimingdan.getName().equals("heimingdan1") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(moshengrenlan); qqClientFriendsList1.add(heimingdanlan); heimingdanlan.setBounds(50, 286, 165, 370); qqClientFriendsList1.remove(heimingdan); qqClientFriendsList1.add(heimingdan_); heimingdan_.setBounds(50, 238, 165, 48); heimingdan.setName("heimingdan2"); qqClientFriendsList1.repaint(); } } }); heimingdan_.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (heimingdan.getName().equals("heimingdan2") && moshengren.getName().equals("moshengren2")) { qqClientFriendsList1.remove(heimingdan_); qqClientFriendsList1.add(heimingdan); heimingdan.setBounds(50, 607, 165, 48); heimingdan.setName("heimingdan1"); qqClientFriendsList1.remove(heimingdanlan); qqClientFriendsList1.add(moshengrenlan); moshengrenlan.setBounds(50, 238, 165, 370); qqClientFriendsList1.repaint(); } } }); // 获得当前鼠标坐标 qqClientFriendsList1.addMouseMotionListener(new MouseAdapter() { public void mouseMoved(MouseEvent e) { x = e.getX(); y = e.getY(); System.out.println("当前X坐标是:" + x + " Y坐标是:" + y); } }); // 判断边界窗口消失 // qqClientFriendsList1.addMouseListener(new MouseAdapter() { // public void mouseExited(MouseEvent e) { // System.out.println("离开时X、Y坐标是:" + x + " " + y); // if (x > 260 || y > 645 || x < 5) { // qqClientFriendsList1.setVisible(false); // new QqClientFriendsListX01(); // // // } // // } // // }); // } public void chat(int i) { QqClientFriendsChat01 qqchat = new QqClientFriendsChat01(ownerqq, MyFriendArrayName[i-1].getText(), qqs[i - 1]); String str = ownerqq + " " + qqs[i - 1]; System.out.println(str); chats.put(str, qqchat); } public static void main(String[] args) { new QqClientFriendsList01(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub } public void dealMsg(MsgHead msg) { if (msg.getType() == MsgType.command_perdata) { MsgPerData mpd = (MsgPerData) msg; // mpd.getDest(); // mpd.getIcon(); // mpd.getSex(); // mpd.getNickname(); // 刷新界面 ownerqq = mpd.getDest(); flushNick(mpd.getNickname()); flushQqNumber(mpd.getDest()); flushTouxiang(mpd.getIcon()); flushSex(mpd.getSex()); } else if (msg.getType() == MsgType.command_teamList) { MsgTeamList mtl = (MsgTeamList) msg; ArrayList<TeamInfo> teams = mtl.getTeamList(); // for (TeamInfo teamInfo : teams) { TeamInfo teamInfo = teams.get(0); ArrayList<UserInfo> users = teamInfo.getFriendList(); for (UserInfo userInfo : users) { // 可以得到的数据 userInfo.getQq(); userInfo.getNickname(); userInfo.getIcon(); userInfo.getOnLine(); userInfo.getSex(); userInfo.getOnLine(); // 刷新界面 flushFriendsList(users); } } else if (msg.getType() == MsgType.command_find_resp) { MsgFindResp mfr = (MsgFindResp) msg; ArrayList<UserInfo> users = mfr.getUsers(); // qqClientFind01的刷新方法 flushOnlineuser(users); } else if (msg.getType() == MsgType.command_addFriend_Resp) { MsgAddFriendResp mafr = (MsgAddFriendResp) msg; if (mafr.getState() == 0) { flushAddFriend(mafr.getQq(), mafr.getNickName(), mafr.getIcon()); } else { JOptionPane.showMessageDialog(null, mafr.getSrc() + " 拒接你的添加好友请求!"); } } else if (msg.getType() == MsgType.command_onLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_onLine); } else if (msg.getType() == MsgType.command_offLine) { // 刷新列表 flushOnlineOffline(msg.getSrc(), MsgType.command_offLine); } else if (msg.getType() == MsgType.command_chatText) { MsgChatText mct = (MsgChatText) msg; String key = mct.getDest()+" "+mct.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == mct.getSrc()) { num = i; break; } } //System.out.println("MyFriendArrayName[num].getText()"+MyFriendArrayName[num].getText()+" num:"+num+" key:"+key); qqClientFriendsChat01 = chats.get(key); if (qqClientFriendsChat01 == null) { qqClientFriendsChat01 = new QqClientFriendsChat01(ownerqq, MyFriendArrayName[num].getText(), mct.getSrc()); chats.put(key, qqClientFriendsChat01); } qqClientFriendsChat01.flushFriendMsg(mct.getTime(),mct.getContent(), MyFriendArrayName[num].getText() ); } else if (msg.getType() == MsgType.command_addYou) { MsgAddYou may = (MsgAddYou) msg; may.getSex(); may.getNote(); may.getNickname(); may.getSrc(); // 弹出界面 new QqClientAcceptFriends01(ownerqq).flushAccept(may.getSrc(), may.getNickname(), may.getNote()); }else if(msg.getType() == MsgType.command_vibration){ String key = msg.getDest()+" "+msg.getSrc(); // 刷新数据 int num = 0; for (int i = 0; i < 10; i++) { if (qqs[i] == msg.getSrc()) { num = i; break; } } qqClientFriendsChat01 = chats.get(key); if (qqClientFriendsChat01 == null) { qqClientFriendsChat01 = new QqClientFriendsChat01(ownerqq, MyFriendArrayName[num].getText(), msg.getSrc()); chats.put(key, qqClientFriendsChat01); } //震动窗口 qqClientFriendsChat01.Vibration(); } } }
package view; import java.awt.Font; import java.awt.List; import java.awt.TextArea; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import msg.MsgChatText; import msg.MsgType; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientFriendsGroupChat extends JFrame implements MouseListener { JFrame qqClientFriendsChat; JLabel up, down, left, right; TextArea inputinfo, outputinfo; Font f,ff; JButton inputTextJButton, inputFileJButton, exitJButton, hideJButton, lookJButton, quakeJButton; JLabel title ,groupListJLabel; List groupList; String nickName; // 发送打包好的Msg @SuppressWarnings("unused") private ClientConServer ccs = ClientConServer.getCcs(); // 定义Msg MsgChatText mct; // 刷新方法 public void flushNick() { qqClientFriendsChat.remove(title); qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); qqClientFriendsChat.remove(up); qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); } public QqClientFriendsGroupChat() { qqClientFriendsChat = new JFrame(); final JFrame qqClientFriendsChat = this; f = new Font("DaiYu", Font.BOLD, 26); ff = new Font("DaiYu", Font.BOLD, 14); exitJButton = new JButton(new ImageIcon("image/chatJiemian01/exit.jpg")); nickName = "小明"; title = new JLabel("在与" + nickName + "的聊天"); // up = new JLabel(new ImageIcon("image/chatJiemian01/up.jpg")); down = new JLabel(new ImageIcon("image/chatJiemian01/down.jpg")); left = new JLabel(new ImageIcon("image/chatJiemian01/left.jpg")); right = new JLabel(new ImageIcon("image/chatJiemian01/right.jpg")); inputinfo = new TextArea(""); outputinfo = new TextArea(); inputTextJButton = new JButton(new ImageIcon( "image/chatJiemian01/inputText.jpg")); inputFileJButton = new JButton(new ImageIcon( "image/chatJiemian01/inputFile.jpg")); hideJButton = new JButton(new ImageIcon("image/chatJiemian01/hide.jpg")); lookJButton = new JButton(new ImageIcon("image/chatJiemian01/look.jpg")); quakeJButton = new JButton(new ImageIcon( "image/chatJiemian01/quake.jpg")); // 群好友列表 groupListJLabel = new JLabel("群好友列表"); groupList = new List(); // 窗口设置 qqClientFriendsChat.setUndecorated(true); qqClientFriendsChat.setLayout(null); qqClientFriendsChat.setSize(500, 500); // 设置窗口大小 qqClientFriendsChat.setLocation(450, 130); qqClientFriendsChat.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭 qqClientFriendsChat.setVisible(true); // 设置窗口可视 qqClientFriendsChat.setResizable(false); // 设置窗口大小不可调 // 字体设置 inputinfo.setFont(f); outputinfo.setFont(f); title.setFont(f); // 标题位置 qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); // 周围背景 qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); qqClientFriendsChat.add(down); down.setBounds(0, 450, 500, 50); qqClientFriendsChat.add(left); left.setBounds(0, 50, 50, 400); qqClientFriendsChat.add(right); right.setBounds(450, 50, 50, 400); // 顶部部分按钮 qqClientFriendsChat.add(exitJButton); exitJButton.setBounds(400, 0, 100, 50); qqClientFriendsChat.add(hideJButton); hideJButton.setBounds(300, 0, 100, 50); // 中间部分按钮 qqClientFriendsChat.add(lookJButton); lookJButton.setBounds(50, 300, 50, 50); qqClientFriendsChat.add(quakeJButton); quakeJButton.setBounds(100, 300, 50, 50); qqClientFriendsChat.add(inputTextJButton); inputTextJButton.setBounds(350, 300, 100, 50); qqClientFriendsChat.add(inputFileJButton); inputFileJButton.setBounds(150, 300, 200, 50); // 输入框 输出框 好友列表 qqClientFriendsChat.add(groupListJLabel); groupListJLabel.setBounds(370, 50, 80, 40); qqClientFriendsChat.add(inputinfo); inputinfo.setBounds(50, 350, 400, 100); qqClientFriendsChat.add(outputinfo); outputinfo.setBounds(50, 50, 320, 250); qqClientFriendsChat.add(groupList); groupList.setBounds(370, 90, 80, 210); // 加几个看看效果 groupListJLabel.setFont(ff); groupList.setFont(ff); groupList.add("小明"); groupList.add("小明"); groupList.add("小明"); groupList.add("小明"); groupList.add("小明"); // 按钮监听 inputTextJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("输入要说的话"); outputinfo.append("我说:\n" + inputinfo.getText() + "\n"); inputinfo.setText(""); mct.setContent(inputinfo.getText()); mct.setDest(MsgType.SERVER_QQ_NUMBER); // mct.setSrc(); mct.setTime(""); mct.getTotalLen(); mct.getType(); // ccs.sendMsg(mct); } }); inputFileJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("传送文件"); JOptionPane.showMessageDialog(null, "该功能尚未实现"); } }); quakeJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("震动"); Thread t = new Thread(new tools.Dancing(qqClientFriendsChat)); t.start(); } }); hideJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("最小化聊天窗口"); qqClientFriendsChat.setExtendedState(JFrame.ICONIFIED); } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出聊天窗口"); qqClientFriendsChat.setVisible(false); } }); } public static void main(String[] args) { new QqClientFriendsGroupChat(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
package view; import java.awt.Font; import java.awt.TextArea; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.Date; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import msg.MsgChatText; import msg.MsgHead; import msg.MsgType; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientFriendsChat04 extends JFrame implements MouseListener { JFrame qqClientFriendsChat; JLabel up, down, left, right; TextArea inputinfo, outputinfo; Font f; JButton inputTextJButton, inputFileJButton, exitJButton, hideJButton, lookJButton, quakeJButton; JLabel title; private int friendqq,ownerqq; // 发送打包好的Msg @SuppressWarnings("unused") private ClientConServer ccs = ClientConServer.getCcs(); // 刷新方法 public void flushNick(String nickname) { qqClientFriendsChat.remove(title); title.setText(nickname); qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); qqClientFriendsChat.remove(up); qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); } // 刷新好友发过来的消息 public void flushFriendMsg(String time,String context,String nickname2){ //System.out.println(time+" "+context); outputinfo.append("\r\n"); outputinfo.append(time+" "); outputinfo.append("\r\n"); outputinfo.append(nickname2 ); outputinfo.append("说: "); outputinfo.append("\r\n"); outputinfo.append(context); } public QqClientFriendsChat04(int ownerqq,String nickName , int friendqq) { this.ownerqq = ownerqq; this.friendqq = friendqq; qqClientFriendsChat = new JFrame(); final JFrame qqClientFriendsChat = this; f = new Font("DaiYu", Font.BOLD, 26); exitJButton = new JButton(new ImageIcon("image/chatJiemian04/exit.jpg")); //nickName = "小明"; title = new JLabel(); // up = new JLabel(new ImageIcon("image/chatJiemian04/up.jpg")); down = new JLabel(new ImageIcon("image/chatJiemian04/down.jpg")); left = new JLabel(new ImageIcon("image/chatJiemian04/left.jpg")); right = new JLabel(new ImageIcon("image/chatJiemian04/right.jpg")); //System.out.println("nickName:"+nickName); flushNick("在与" + nickName + "的聊天"); inputinfo = new TextArea(""); outputinfo = new TextArea(); inputTextJButton = new JButton(new ImageIcon( "image/chatJiemian04/inputText.jpg")); inputFileJButton = new JButton(new ImageIcon( "image/chatJiemian04/inputFile.jpg")); hideJButton = new JButton(new ImageIcon("image/chatJiemian04/hide.jpg")); lookJButton = new JButton(new ImageIcon("image/chatJiemian04/look.jpg")); quakeJButton = new JButton(new ImageIcon( "image/chatJiemian04/quake.jpg")); // 窗口设置 qqClientFriendsChat.setUndecorated(true); Drag drag = new Drag(qqClientFriendsChat); drag.setDragable(); qqClientFriendsChat.setLayout(null); qqClientFriendsChat.setSize(500, 500); // 设置窗口大小 qqClientFriendsChat.setLocation(450, 130); qqClientFriendsChat.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭 qqClientFriendsChat.setVisible(true); // 设置窗口可视 qqClientFriendsChat.setResizable(false); // 设置窗口大小不可调 // 字体设置 inputinfo.setFont(f); outputinfo.setFont(f); title.setFont(f); // 标题位置 qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); // 周围背景 qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); qqClientFriendsChat.add(down); down.setBounds(0, 450, 500, 50); qqClientFriendsChat.add(left); left.setBounds(0, 50, 50, 400); qqClientFriendsChat.add(right); right.setBounds(450, 50, 50, 400); // 顶部部分按钮 qqClientFriendsChat.add(exitJButton); exitJButton.setBounds(400, 0, 100, 50); qqClientFriendsChat.add(hideJButton); hideJButton.setBounds(300, 0, 100, 50); // 中间部分按钮 qqClientFriendsChat.add(lookJButton); lookJButton.setBounds(50, 300, 50, 50); qqClientFriendsChat.add(quakeJButton); quakeJButton.setBounds(100, 300, 50, 50); qqClientFriendsChat.add(inputTextJButton); inputTextJButton.setBounds(350, 300, 100, 50); qqClientFriendsChat.add(inputFileJButton); inputFileJButton.setBounds(150, 300, 200, 50); // 输入框 输出框 qqClientFriendsChat.add(inputinfo); inputinfo.setBounds(50, 350, 400, 100); qqClientFriendsChat.add(outputinfo); outputinfo.setBounds(50, 50, 400, 250); // 按钮监听 inputTextJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { Date date = new Date(); String time = date.getHours()+":"+date.getMinutes()+":"+date.getSeconds(); // System.out.println("输入要说的话"); String s = inputinfo.getText(); outputinfo.append("\n"+time+"\n我说:\n" + s + "\n"); inputinfo.setText(""); System.out.println("s:"+s); System.out.println("inputinfo.getText().getBytes().length: "+s.getBytes().length); MsgChatText mct = new MsgChatText(); mct.setContent(s); mct.setDest(QqClientFriendsChat04.this.friendqq); mct.setSrc(QqClientFriendsChat04.this.ownerqq); mct.setType(MsgType.command_chatText); mct.setTotalLen(4+1+4+4+s.getBytes().length+20); mct.setTime(time); try { ccs.sendMsg(mct); } catch (Exception e1) { e1.printStackTrace(); } } }); inputFileJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("传送文件"); JOptionPane.showMessageDialog(null, "该功能尚未实现"); } }); quakeJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("震动"); Vibration(); MsgHead msg = new MsgHead(); msg.setDest(QqClientFriendsChat04.this.friendqq); msg.setSrc(QqClientFriendsChat04.this.ownerqq); msg.setType(MsgType.command_vibration); msg.setTotalLen(4 + 1 + 4 + 4); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); hideJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("最小化聊天窗口"); qqClientFriendsChat.setExtendedState(JFrame.ICONIFIED); } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出聊天窗口"); qqClientFriendsChat.setVisible(false); } }); } // public static void main(String[] args) { // // } // 震动方法 public void Vibration() { Thread t = new Thread(new tools.Dancing(qqClientFriendsChat)); t.start(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
package view; import java.awt.Font; import java.awt.TextArea; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.Date; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import msg.MsgChatText; import msg.MsgHead; import msg.MsgType; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientFriendsChat03 extends JFrame implements MouseListener { JFrame qqClientFriendsChat; JLabel up, down, left, right; TextArea inputinfo, outputinfo; Font f; JButton inputTextJButton, inputFileJButton, exitJButton, hideJButton, lookJButton, quakeJButton; JLabel title; private int friendqq,ownerqq; // 发送打包好的Msg @SuppressWarnings("unused") private ClientConServer ccs = ClientConServer.getCcs(); // 刷新方法 public void flushNick(String nickname) { qqClientFriendsChat.remove(title); title.setText(nickname); qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); qqClientFriendsChat.remove(up); qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); } // 刷新好友发过来的消息 public void flushFriendMsg(String time,String context,String nickname2){ //System.out.println(time+" "+context); outputinfo.append("\r\n"); outputinfo.append(time+" "); outputinfo.append("\r\n"); outputinfo.append(nickname2 ); outputinfo.append("说: "); outputinfo.append("\r\n"); outputinfo.append(context); } public QqClientFriendsChat03(int ownerqq,String nickName , int friendqq) { this.ownerqq = ownerqq; this.friendqq = friendqq; qqClientFriendsChat = new JFrame(); final JFrame qqClientFriendsChat = this; f = new Font("DaiYu", Font.BOLD, 26); exitJButton = new JButton(new ImageIcon("image/chatJiemian03/exit.jpg")); //nickName = "小明"; title = new JLabel(); // up = new JLabel(new ImageIcon("image/chatJiemian03/up.jpg")); down = new JLabel(new ImageIcon("image/chatJiemian03/down.jpg")); left = new JLabel(new ImageIcon("image/chatJiemian03/left.jpg")); right = new JLabel(new ImageIcon("image/chatJiemian03/right.jpg")); //System.out.println("nickName:"+nickName); flushNick("在与" + nickName + "的聊天"); inputinfo = new TextArea(""); outputinfo = new TextArea(); inputTextJButton = new JButton(new ImageIcon( "image/chatJiemian03/inputText.jpg")); inputFileJButton = new JButton(new ImageIcon( "image/chatJiemian03/inputFile.jpg")); hideJButton = new JButton(new ImageIcon("image/chatJiemian03/hide.jpg")); lookJButton = new JButton(new ImageIcon("image/chatJiemian03/look.jpg")); quakeJButton = new JButton(new ImageIcon( "image/chatJiemian03/quake.jpg")); // 窗口设置 qqClientFriendsChat.setUndecorated(true); Drag drag = new Drag(qqClientFriendsChat); drag.setDragable(); qqClientFriendsChat.setLayout(null); qqClientFriendsChat.setSize(500, 500); // 设置窗口大小 qqClientFriendsChat.setLocation(450, 130); qqClientFriendsChat.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭 qqClientFriendsChat.setVisible(true); // 设置窗口可视 qqClientFriendsChat.setResizable(false); // 设置窗口大小不可调 // 字体设置 inputinfo.setFont(f); outputinfo.setFont(f); title.setFont(f); // 标题位置 qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); // 周围背景 qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); qqClientFriendsChat.add(down); down.setBounds(0, 450, 500, 50); qqClientFriendsChat.add(left); left.setBounds(0, 50, 50, 400); qqClientFriendsChat.add(right); right.setBounds(450, 50, 50, 400); // 顶部部分按钮 qqClientFriendsChat.add(exitJButton); exitJButton.setBounds(400, 0, 100, 50); qqClientFriendsChat.add(hideJButton); hideJButton.setBounds(300, 0, 100, 50); // 中间部分按钮 qqClientFriendsChat.add(lookJButton); lookJButton.setBounds(50, 300, 50, 50); qqClientFriendsChat.add(quakeJButton); quakeJButton.setBounds(100, 300, 50, 50); qqClientFriendsChat.add(inputTextJButton); inputTextJButton.setBounds(350, 300, 100, 50); qqClientFriendsChat.add(inputFileJButton); inputFileJButton.setBounds(150, 300, 200, 50); // 输入框 输出框 qqClientFriendsChat.add(inputinfo); inputinfo.setBounds(50, 350, 400, 100); qqClientFriendsChat.add(outputinfo); outputinfo.setBounds(50, 50, 400, 250); // 按钮监听 inputTextJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { Date date = new Date(); String time = date.getHours()+":"+date.getMinutes()+":"+date.getSeconds(); // System.out.println("输入要说的话"); String s = inputinfo.getText(); outputinfo.append("\n"+time+"\n我说:\n" + s + "\n"); inputinfo.setText(""); System.out.println("s:"+s); System.out.println("inputinfo.getText().getBytes().length: "+s.getBytes().length); MsgChatText mct = new MsgChatText(); mct.setContent(s); mct.setDest(QqClientFriendsChat03.this.friendqq); mct.setSrc(QqClientFriendsChat03.this.ownerqq); mct.setType(MsgType.command_chatText); mct.setTotalLen(4+1+4+4+s.getBytes().length+20); mct.setTime(time); try { ccs.sendMsg(mct); } catch (Exception e1) { e1.printStackTrace(); } } }); inputFileJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("传送文件"); JOptionPane.showMessageDialog(null, "该功能尚未实现"); } }); quakeJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("震动"); Vibration(); MsgHead msg = new MsgHead(); msg.setDest(QqClientFriendsChat03.this.friendqq); msg.setSrc(QqClientFriendsChat03.this.ownerqq); msg.setType(MsgType.command_vibration); msg.setTotalLen(4 + 1 + 4 + 4); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); hideJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("最小化聊天窗口"); qqClientFriendsChat.setExtendedState(JFrame.ICONIFIED); } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出聊天窗口"); qqClientFriendsChat.setVisible(false); } }); } // public static void main(String[] args) { // // } // 震动方法 public void Vibration() { Thread t = new Thread(new tools.Dancing(qqClientFriendsChat)); t.start(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
package view; import java.awt.Font; import java.awt.TextArea; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.Date; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import msg.MsgChatText; import msg.MsgHead; import msg.MsgType; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientFriendsChat02 extends JFrame implements MouseListener { JFrame qqClientFriendsChat; JLabel up, down, left, right; TextArea inputinfo, outputinfo; Font f; JButton inputTextJButton, inputFileJButton, exitJButton, hideJButton, lookJButton, quakeJButton; JLabel title; private int friendqq, ownerqq; // 发送打包好的Msg @SuppressWarnings("unused") private ClientConServer ccs = ClientConServer.getCcs(); // 刷新方法 public void flushNick(String nickname) { qqClientFriendsChat.remove(title); title.setText(nickname); qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); qqClientFriendsChat.remove(up); qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); } // 刷新好友发过来的消息 public void flushFriendMsg(String time, String context, String nickname2) { // System.out.println(time+" "+context); outputinfo.append("\r\n"); outputinfo.append(time + " "); outputinfo.append("\r\n"); outputinfo.append(nickname2); outputinfo.append("说: "); outputinfo.append("\r\n"); outputinfo.append(context); } public QqClientFriendsChat02(int ownerqq, String nickName, int friendqq) { this.ownerqq = ownerqq; this.friendqq = friendqq; qqClientFriendsChat = new JFrame(); final JFrame qqClientFriendsChat = this; f = new Font("DaiYu", Font.BOLD, 26); exitJButton = new JButton(new ImageIcon("image/chatJiemian02/exit.jpg")); // nickName = "小明"; title = new JLabel(); // up = new JLabel(new ImageIcon("image/chatJiemian02/up.jpg")); down = new JLabel(new ImageIcon("image/chatJiemian02/down.jpg")); left = new JLabel(new ImageIcon("image/chatJiemian02/left.jpg")); right = new JLabel(new ImageIcon("image/chatJiemian02/right.jpg")); // System.out.println("nickName:"+nickName); flushNick("在与" + nickName + "的聊天"); inputinfo = new TextArea(""); outputinfo = new TextArea(); inputTextJButton = new JButton(new ImageIcon( "image/chatJiemian02/inputText.jpg")); inputFileJButton = new JButton(new ImageIcon( "image/chatJiemian02/inputFile.jpg")); hideJButton = new JButton(new ImageIcon("image/chatJiemian02/hide.jpg")); lookJButton = new JButton(new ImageIcon("image/chatJiemian02/look.jpg")); quakeJButton = new JButton(new ImageIcon( "image/chatJiemian02/quake.jpg")); // 窗口设置 qqClientFriendsChat.setUndecorated(true); Drag drag = new Drag(qqClientFriendsChat); drag.setDragable(); qqClientFriendsChat.setLayout(null); qqClientFriendsChat.setSize(500, 500); // 设置窗口大小 qqClientFriendsChat.setLocation(450, 130); qqClientFriendsChat.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭 qqClientFriendsChat.setVisible(true); // 设置窗口可视 qqClientFriendsChat.setResizable(false); // 设置窗口大小不可调 // 字体设置 inputinfo.setFont(f); outputinfo.setFont(f); title.setFont(f); // 标题位置 qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); // 周围背景 qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); qqClientFriendsChat.add(down); down.setBounds(0, 450, 500, 50); qqClientFriendsChat.add(left); left.setBounds(0, 50, 50, 400); qqClientFriendsChat.add(right); right.setBounds(450, 50, 50, 400); // 顶部部分按钮 qqClientFriendsChat.add(exitJButton); exitJButton.setBounds(400, 0, 100, 50); qqClientFriendsChat.add(hideJButton); hideJButton.setBounds(300, 0, 100, 50); // 中间部分按钮 qqClientFriendsChat.add(lookJButton); lookJButton.setBounds(50, 300, 50, 50); qqClientFriendsChat.add(quakeJButton); quakeJButton.setBounds(100, 300, 50, 50); qqClientFriendsChat.add(inputTextJButton); inputTextJButton.setBounds(350, 300, 100, 50); qqClientFriendsChat.add(inputFileJButton); inputFileJButton.setBounds(150, 300, 200, 50); // 输入框 输出框 qqClientFriendsChat.add(inputinfo); inputinfo.setBounds(50, 350, 400, 100); qqClientFriendsChat.add(outputinfo); outputinfo.setBounds(50, 50, 400, 250); // 按钮监听 inputTextJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { Date date = new Date(); String time = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds(); // System.out.println("输入要说的话"); String s = inputinfo.getText(); outputinfo.append("\n" + time + "\n我说:\n" + s + "\n"); inputinfo.setText(""); System.out.println("s:" + s); System.out.println("inputinfo.getText().getBytes().length: " + s.getBytes().length); MsgChatText mct = new MsgChatText(); mct.setContent(s); mct.setDest(QqClientFriendsChat02.this.friendqq); mct.setSrc(QqClientFriendsChat02.this.ownerqq); mct.setType(MsgType.command_chatText); mct.setTotalLen(4 + 1 + 4 + 4 + s.getBytes().length + 20); mct.setTime(time); try { ccs.sendMsg(mct); } catch (Exception e1) { e1.printStackTrace(); } } }); inputFileJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("传送文件"); JOptionPane.showMessageDialog(null, "该功能尚未实现"); } }); quakeJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("震动"); Vibration(); MsgHead msg = new MsgHead(); msg.setDest(QqClientFriendsChat02.this.friendqq); msg.setSrc(QqClientFriendsChat02.this.ownerqq); msg.setType(MsgType.command_vibration); msg.setTotalLen(4 + 1 + 4 + 4); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); hideJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("最小化聊天窗口"); qqClientFriendsChat.setExtendedState(JFrame.ICONIFIED); } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出聊天窗口"); qqClientFriendsChat.setVisible(false); } }); } // public static void main(String[] args) { // // } // 震动方法 public void Vibration() { Thread t = new Thread(new tools.Dancing(qqClientFriendsChat)); t.start(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
package view; import java.awt.Font; import java.awt.TextArea; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.Date; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import msg.MsgChatText; import msg.MsgHead; import msg.MsgType; import client.ClientConServer; @SuppressWarnings("serial") public class QqClientFriendsChat01 extends JFrame implements MouseListener { JFrame qqClientFriendsChat; JLabel up, down, left, right; TextArea inputinfo, outputinfo; Font f; JButton inputTextJButton, inputFileJButton, exitJButton, hideJButton, lookJButton, quakeJButton; JLabel title; private int friendqq, ownerqq; // 发送打包好的Msg @SuppressWarnings("unused") private ClientConServer ccs = ClientConServer.getCcs(); // 刷新方法 public void flushNick(String nickname) { qqClientFriendsChat.remove(title); title.setText(nickname); qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); qqClientFriendsChat.remove(up); qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); } // 刷新好友发过来的消息 public void flushFriendMsg(String time, String context, String nickname2) { // System.out.println(time+" "+context); outputinfo.append("\r\n"); outputinfo.append(time + " "); outputinfo.append("\r\n"); outputinfo.append(nickname2); outputinfo.append("说: "); outputinfo.append("\r\n"); outputinfo.append(context); } public QqClientFriendsChat01(int ownerqq, String nickName, int friendqq) { this.ownerqq = ownerqq; this.friendqq = friendqq; qqClientFriendsChat = new JFrame(); final JFrame qqClientFriendsChat = this; f = new Font("DaiYu", Font.BOLD, 26); exitJButton = new JButton(new ImageIcon("image/chatJiemian01/exit.jpg")); // nickName = "小明"; title = new JLabel(); // up = new JLabel(new ImageIcon("image/chatJiemian01/up.jpg")); down = new JLabel(new ImageIcon("image/chatJiemian01/down.jpg")); left = new JLabel(new ImageIcon("image/chatJiemian01/left.jpg")); right = new JLabel(new ImageIcon("image/chatJiemian01/right.jpg")); // System.out.println("nickName:"+nickName); flushNick("在与" + nickName + "的聊天"); inputinfo = new TextArea(""); outputinfo = new TextArea(); inputTextJButton = new JButton(new ImageIcon( "image/chatJiemian01/inputText.jpg")); inputFileJButton = new JButton(new ImageIcon( "image/chatJiemian01/inputFile.jpg")); hideJButton = new JButton(new ImageIcon("image/chatJiemian01/hide.jpg")); lookJButton = new JButton(new ImageIcon("image/chatJiemian01/look.jpg")); quakeJButton = new JButton(new ImageIcon( "image/chatJiemian01/quake.jpg")); // 窗口设置 qqClientFriendsChat.setUndecorated(true); Drag drag = new Drag(qqClientFriendsChat); drag.setDragable(); qqClientFriendsChat.setLayout(null); qqClientFriendsChat.setSize(500, 500); // 设置窗口大小 qqClientFriendsChat.setLocation(450, 130); qqClientFriendsChat.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭 qqClientFriendsChat.setVisible(true); // 设置窗口可视 qqClientFriendsChat.setResizable(false); // 设置窗口大小不可调 // 字体设置 inputinfo.setFont(f); outputinfo.setFont(f); title.setFont(f); // 标题位置 qqClientFriendsChat.add(title); title.setBounds(60, 0, 190, 50); // 周围背景 qqClientFriendsChat.add(up); up.setBounds(0, 0, 300, 50); qqClientFriendsChat.add(down); down.setBounds(0, 450, 500, 50); qqClientFriendsChat.add(left); left.setBounds(0, 50, 50, 400); qqClientFriendsChat.add(right); right.setBounds(450, 50, 50, 400); // 顶部部分按钮 qqClientFriendsChat.add(exitJButton); exitJButton.setBounds(400, 0, 100, 50); qqClientFriendsChat.add(hideJButton); hideJButton.setBounds(300, 0, 100, 50); // 中间部分按钮 qqClientFriendsChat.add(lookJButton); lookJButton.setBounds(50, 300, 50, 50); qqClientFriendsChat.add(quakeJButton); quakeJButton.setBounds(100, 300, 50, 50); qqClientFriendsChat.add(inputTextJButton); inputTextJButton.setBounds(350, 300, 100, 50); qqClientFriendsChat.add(inputFileJButton); inputFileJButton.setBounds(150, 300, 200, 50); // 输入框 输出框 qqClientFriendsChat.add(inputinfo); inputinfo.setBounds(50, 350, 400, 100); qqClientFriendsChat.add(outputinfo); outputinfo.setBounds(50, 50, 400, 250); // 按钮监听 inputTextJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { Date date = new Date(); String time = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds(); // System.out.println("输入要说的话"); String s = inputinfo.getText(); outputinfo.append("\n" + time + "\n我说:\n" + s + "\n"); inputinfo.setText(""); System.out.println("s:" + s); System.out.println("inputinfo.getText().getBytes().length: " + s.getBytes().length); MsgChatText mct = new MsgChatText(); mct.setContent(s); mct.setDest(QqClientFriendsChat01.this.friendqq); mct.setSrc(QqClientFriendsChat01.this.ownerqq); mct.setType(MsgType.command_chatText); mct.setTotalLen(4 + 1 + 4 + 4 + s.getBytes().length + 20); mct.setTime(time); try { ccs.sendMsg(mct); } catch (Exception e1) { e1.printStackTrace(); } } }); inputFileJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("传送文件"); JOptionPane.showMessageDialog(null, "该功能尚未实现"); } }); quakeJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("震动"); Vibration(); MsgHead msg = new MsgHead(); msg.setDest(QqClientFriendsChat01.this.friendqq); msg.setSrc(QqClientFriendsChat01.this.ownerqq); msg.setType(MsgType.command_vibration); msg.setTotalLen(4 + 1 + 4 + 4); try { ccs.sendMsg(msg); } catch (Exception e1) { e1.printStackTrace(); } } }); hideJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("最小化聊天窗口"); qqClientFriendsChat.setExtendedState(JFrame.ICONIFIED); } }); exitJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { System.out.println("退出聊天窗口"); qqClientFriendsChat.setVisible(false); } }); } // public static void main(String[] args) { // // } // 震动方法 public void Vibration() { Thread t = new Thread(new tools.Dancing(qqClientFriendsChat)); t.start(); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } }
package view; import java.awt.Font; import java.awt.List; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientFind04 extends JFrame { private JFrame qqClientFindJFrame; int locationInt; private int ownerqq; public void setQqClientFindJFrameLeft() { qqClientFindJFrame.setLocation(284, 575); locationInt = 0; } public void setQqClientFindJFrameRight() { qqClientFindJFrame.setLocation(694, 575); locationInt = 1; } JLabel qqClientFindJLabel, findListJLabel; RoundButton exitFindJButton, startFindJButton; List findList; JTextArea findJTextArea; Font f, i; public QqClientFind04(int ownerqq) { // this.ownerqq = ownerqq; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian04/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请在这里输入QQ号"); findListJLabel = new JLabel("当前在线用户"); findList = new List(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 25, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(270, 25, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(100, 10, 150, 20); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(120, 30, 150, 30); qqClientFindJFrame.add(findList); findList.setBounds(100, 60, 150, 40); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { String[] splitFindList; System.out.println("当前选择:" + findList.getSelectedItem()); splitFindList = findList.getSelectedItem().split(" "); System.out.println("切分后:" + splitFindList[0]); if (locationInt == 0) { new QqClientAddFriends04(QqClientFind04.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationLeft(); } if (locationInt == 1) { new QqClientAddFriends04(QqClientFind04.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationRight(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } // public static void main(String[] args) { // new QqClientFind04(); // } }
package view; import java.awt.Font; import java.awt.List; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientFind03 extends JFrame { private JFrame qqClientFindJFrame; int locationInt; private int ownerqq; public void setQqClientFindJFrameLeft() { qqClientFindJFrame.setLocation(284, 575); locationInt = 0; } public void setQqClientFindJFrameRight() { qqClientFindJFrame.setLocation(694, 575); locationInt = 1; } JLabel qqClientFindJLabel, findListJLabel; RoundButton exitFindJButton, startFindJButton; List findList; JTextArea findJTextArea; Font f, i; public QqClientFind03(int ownerqq) { // this.ownerqq = ownerqq; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian03/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请在这里输入QQ号"); findListJLabel = new JLabel("当前在线用户"); findList = new List(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 25, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(270, 25, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(100, 10, 150, 20); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(120, 30, 150, 30); qqClientFindJFrame.add(findList); findList.setBounds(100, 60, 150, 40); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { String[] splitFindList; System.out.println("当前选择:" + findList.getSelectedItem()); splitFindList = findList.getSelectedItem().split(" "); System.out.println("切分后:" + splitFindList[0]); if (locationInt == 0) { new QqClientAddFriends03(QqClientFind03.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationLeft(); } if (locationInt == 1) { new QqClientAddFriends03(QqClientFind03.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationRight(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } // public static void main(String[] args) { // new QqClientFind03(); // } }
package view; import java.awt.Font; import java.awt.List; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientFind02 extends JFrame { private JFrame qqClientFindJFrame; int locationInt; private int ownerqq; public void setQqClientFindJFrameLeft() { qqClientFindJFrame.setLocation(284, 575); locationInt = 0; } public void setQqClientFindJFrameRight() { qqClientFindJFrame.setLocation(694, 575); locationInt = 1; } JLabel qqClientFindJLabel, findListJLabel; RoundButton exitFindJButton, startFindJButton; List findList; JTextArea findJTextArea; Font f, i; public QqClientFind02(int ownerqq) { // this.ownerqq = ownerqq; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian02/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请在这里输入QQ号"); findListJLabel = new JLabel("当前在线用户"); findList = new List(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 25, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(270, 25, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(100, 10, 150, 20); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(120, 30, 150, 30); qqClientFindJFrame.add(findList); findList.setBounds(100, 60, 150, 40); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { String[] splitFindList; System.out.println("当前选择:" + findList.getSelectedItem()); splitFindList = findList.getSelectedItem().split(" "); System.out.println("切分后:" + splitFindList[0]); if (locationInt == 0) { new QqClientAddFriends02(QqClientFind02.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationLeft(); } if (locationInt == 1) { new QqClientAddFriends02(QqClientFind02.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationRight(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } // public static void main(String[] args) { // new QqClientFind02(); // } }
package view; import java.awt.Font; import java.awt.List; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientFind01 extends JFrame { private JFrame qqClientFindJFrame; int locationInt; private int ownerqq; public void setQqClientFindJFrameLeft() { qqClientFindJFrame.setLocation(284, 575); locationInt = 0; } public void setQqClientFindJFrameRight() { qqClientFindJFrame.setLocation(694, 575); locationInt = 1; } JLabel qqClientFindJLabel, findListJLabel; RoundButton exitFindJButton, startFindJButton; List findList; JTextArea findJTextArea; Font f, i; public QqClientFind01(int ownerqq) { // this.ownerqq = ownerqq; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian01/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请在这里输入QQ号"); findListJLabel = new JLabel("当前在线用户"); findList = new List(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 25, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(270, 25, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(100, 10, 150, 20); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(120, 30, 150, 30); qqClientFindJFrame.add(findList); findList.setBounds(100, 60, 150, 40); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { String[] splitFindList; System.out.println("当前选择:" + findList.getSelectedItem()); splitFindList = findList.getSelectedItem().split(" "); System.out.println("切分后:" + splitFindList[0]); if (locationInt == 0) { new QqClientAddFriends01(QqClientFind01.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationLeft(); } if (locationInt == 1) { new QqClientAddFriends01(QqClientFind01.this.ownerqq,Integer.valueOf(splitFindList[0])).setLocationRight(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } // public static void main(String[] args) { // new QqClientFind01(); // } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddFriend; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAddFriends04 extends JFrame { private int ownerqq, friendqq; private ClientConServer ccs = ClientConServer.getCcs(); static JFrame qqClientFindJFrame; int locationInt; public void setLocationRight() { qqClientFindJFrame.setLocation(694, 445); locationInt = 1; } public void setLocationLeft() { qqClientFindJFrame.setLocation(284, 445); locationInt = 0; } JLabel qqClientFindJLabel, findListJLabel, add1JLabel, add2JLabel, haomaJLabel; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma; public QqClientAddFriends04(int ownerqq, int friendqq) { // this.ownerqq = ownerqq; this.friendqq = friendqq; add1JLabel = new JLabel("您正在添加"); haomaJLabel = new JLabel(friendqq + ""); add2JLabel = new JLabel("为好友"); qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian04/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请填写备注"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(add1JLabel); add1JLabel.setBounds(15, 5, 90, 30); qqClientFindJFrame.add(add2JLabel); add2JLabel.setBounds(115, 5, 60, 30); qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(83, 5, 30, 30); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // System.out.println("发送加好友信息"); try { MsgAddFriend maf = new MsgAddFriend(); maf.setDest(QqClientAddFriends04.this.friendqq); maf.setSrc(QqClientAddFriends04.this.ownerqq); maf.setNote(findJTextArea.getText()); maf.setType(MsgType.command_addFriend); maf.setFriendQq(QqClientAddFriends04.this.friendqq); maf.setTotalLen(4 + 1 + 4 + 4 + 4 + 30); ccs.sendMsg(maf); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddFriend; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAddFriends03 extends JFrame { private int ownerqq, friendqq; private ClientConServer ccs = ClientConServer.getCcs(); static JFrame qqClientFindJFrame; int locationInt; public void setLocationRight() { qqClientFindJFrame.setLocation(694, 445); locationInt = 1; } public void setLocationLeft() { qqClientFindJFrame.setLocation(284, 445); locationInt = 0; } JLabel qqClientFindJLabel, findListJLabel, add1JLabel, add2JLabel, haomaJLabel; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma; public QqClientAddFriends03(int ownerqq, int friendqq) { // this.ownerqq = ownerqq; this.friendqq = friendqq; add1JLabel = new JLabel("您正在添加"); haomaJLabel = new JLabel(friendqq + ""); add2JLabel = new JLabel("为好友"); qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian03/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请填写备注"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(add1JLabel); add1JLabel.setBounds(15, 5, 90, 30); qqClientFindJFrame.add(add2JLabel); add2JLabel.setBounds(115, 5, 60, 30); qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(83, 5, 30, 30); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // System.out.println("发送加好友信息"); try { MsgAddFriend maf = new MsgAddFriend(); maf.setDest(QqClientAddFriends03.this.friendqq); maf.setSrc(QqClientAddFriends03.this.ownerqq); maf.setNote(findJTextArea.getText()); maf.setType(MsgType.command_addFriend); maf.setFriendQq(QqClientAddFriends03.this.friendqq); maf.setTotalLen(4 + 1 + 4 + 4 + 4 + 30); ccs.sendMsg(maf); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddFriend; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAddFriends02 extends JFrame { private int ownerqq, friendqq; private ClientConServer ccs = ClientConServer.getCcs(); static JFrame qqClientFindJFrame; int locationInt; public void setLocationRight() { qqClientFindJFrame.setLocation(694, 445); locationInt = 1; } public void setLocationLeft() { qqClientFindJFrame.setLocation(284, 445); locationInt = 0; } JLabel qqClientFindJLabel, findListJLabel, add1JLabel, add2JLabel, haomaJLabel; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma; public QqClientAddFriends02(int ownerqq, int friendqq) { // this.ownerqq = ownerqq; this.friendqq = friendqq; add1JLabel = new JLabel("您正在添加"); haomaJLabel = new JLabel(friendqq + ""); add2JLabel = new JLabel("为好友"); qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian02/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请填写备注"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(add1JLabel); add1JLabel.setBounds(15, 5, 90, 30); qqClientFindJFrame.add(add2JLabel); add2JLabel.setBounds(115, 5, 60, 30); qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(83, 5, 30, 30); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // System.out.println("发送加好友信息"); try { MsgAddFriend maf = new MsgAddFriend(); maf.setDest(QqClientAddFriends02.this.friendqq); maf.setSrc(QqClientAddFriends02.this.ownerqq); maf.setNote(findJTextArea.getText()); maf.setType(MsgType.command_addFriend); maf.setFriendQq(QqClientAddFriends02.this.friendqq); maf.setTotalLen(4 + 1 + 4 + 4 + 4 + 30); ccs.sendMsg(maf); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddFriend; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAddFriends01 extends JFrame { private int ownerqq, friendqq; private ClientConServer ccs = ClientConServer.getCcs(); static JFrame qqClientFindJFrame; int locationInt; public void setLocationRight() { qqClientFindJFrame.setLocation(694, 445); locationInt = 1; } public void setLocationLeft() { qqClientFindJFrame.setLocation(284, 445); locationInt = 0; } JLabel qqClientFindJLabel, findListJLabel, add1JLabel, add2JLabel, haomaJLabel; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma; public QqClientAddFriends01(int ownerqq, int friendqq) { // this.ownerqq = ownerqq; this.friendqq = friendqq; add1JLabel = new JLabel("您正在添加"); haomaJLabel = new JLabel(friendqq + ""); add2JLabel = new JLabel("为好友"); qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian01/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请填写备注"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setSize(350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(add1JLabel); add1JLabel.setBounds(15, 5, 90, 30); qqClientFindJFrame.add(add2JLabel); add2JLabel.setBounds(115, 5, 60, 30); qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(83, 5, 30, 30); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { // System.out.println("发送加好友信息"); try { MsgAddFriend maf = new MsgAddFriend(); maf.setDest(QqClientAddFriends01.this.friendqq); maf.setSrc(QqClientAddFriends01.this.ownerqq); maf.setNote(findJTextArea.getText()); maf.setType(MsgType.command_addFriend); maf.setFriendQq(QqClientAddFriends01.this.friendqq); maf.setTotalLen(4 + 1 + 4 + 4 + 4 + 30); ccs.sendMsg(maf); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAddFriends extends JFrame { static JFrame qqClientFindJFrame; JLabel qqClientFindJLabel, findListJLabel, add1JLabel, add2JLabel , haomaJLabel; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma; public QqClientAddFriends() { // haoma = "1001"; add1JLabel = new JLabel("您正在添加"); haomaJLabel = new JLabel(haoma); add2JLabel = new JLabel("为好友"); qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian01/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); findJTextArea = new JTextArea("请填写备注"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 445, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); // qqClientFindJFrame.add(add1JLabel); add1JLabel.setBounds(15, 5, 90, 30); qqClientFindJFrame.add(add2JLabel); add2JLabel.setBounds(115, 5, 60, 30); qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(83, 5, 30,30); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { new QqClientAddFriends(); } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddYouResp; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAcceptFriends04 extends JFrame { private ClientConServer ccs = ClientConServer.getCcs(); private JFrame qqClientFindJFrame; private int ownerqq,friendqq; public JFrame getQqClientFindJFrame() { return qqClientFindJFrame; } public void setQqClientFindJFrame(JFrame qqClientFindJFrame) { this.qqClientFindJFrame = qqClientFindJFrame; } JLabel haomaJLabel, nickJLabel, qqClientFindJLabel, findListJLabel, pleaseAccept; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma, nick; // 接受好友请求刷新 public void flushAccept(int friendsQq, String nickName, String note) { this.friendqq = friendsQq; findJTextArea.setText(note); haomaJLabel.setText(friendsQq + ""); nickJLabel.setText(nickName); } public QqClientAcceptFriends04(int ownerqq) { // this.ownerqq = ownerqq; haoma = "1001"; nick = "小明"; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian04/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); haomaJLabel = new JLabel(haoma); nickJLabel = new JLabel(nick); pleaseAccept = new JLabel("请求添加好友"); findJTextArea = new JTextArea(); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 315, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); nickJLabel.setFont(i); pleaseAccept.setFont(i); // qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(2, 5, 30, 20); qqClientFindJFrame.add(nickJLabel); nickJLabel.setBounds(32, 5, 40, 20); qqClientFindJFrame.add(pleaseAccept); pleaseAccept.setBounds(68, 5, 110, 20); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setType(MsgType.command_addYouResp); mayr.setSrc(QqClientAcceptFriends04.this.ownerqq); mayr.setDest(friendqq); mayr.setState((byte)0); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setSrc(QqClientAcceptFriends04.this.ownerqq); mayr.setDest(friendqq); System.out.println("friendqq:"+friendqq); mayr.setType(MsgType.command_addYouResp); mayr.setState((byte)1); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); } // public static void main(String[] args) { // new QqClientAcceptFriends04(); // } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddYouResp; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAcceptFriends03 extends JFrame { private ClientConServer ccs = ClientConServer.getCcs(); private JFrame qqClientFindJFrame; private int ownerqq,friendqq; public JFrame getQqClientFindJFrame() { return qqClientFindJFrame; } public void setQqClientFindJFrame(JFrame qqClientFindJFrame) { this.qqClientFindJFrame = qqClientFindJFrame; } JLabel haomaJLabel, nickJLabel, qqClientFindJLabel, findListJLabel, pleaseAccept; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma, nick; // 接受好友请求刷新 public void flushAccept(int friendsQq, String nickName, String note) { this.friendqq = friendsQq; findJTextArea.setText(note); haomaJLabel.setText(friendsQq + ""); nickJLabel.setText(nickName); } public QqClientAcceptFriends03(int ownerqq) { // this.ownerqq = ownerqq; haoma = "1001"; nick = "小明"; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian03/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); haomaJLabel = new JLabel(haoma); nickJLabel = new JLabel(nick); pleaseAccept = new JLabel("请求添加好友"); findJTextArea = new JTextArea(); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 315, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); nickJLabel.setFont(i); pleaseAccept.setFont(i); // qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(2, 5, 30, 20); qqClientFindJFrame.add(nickJLabel); nickJLabel.setBounds(32, 5, 40, 20); qqClientFindJFrame.add(pleaseAccept); pleaseAccept.setBounds(68, 5, 110, 20); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setType(MsgType.command_addYouResp); mayr.setSrc(QqClientAcceptFriends03.this.ownerqq); mayr.setDest(friendqq); mayr.setState((byte)0); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setSrc(QqClientAcceptFriends03.this.ownerqq); mayr.setDest(friendqq); System.out.println("friendqq:"+friendqq); mayr.setType(MsgType.command_addYouResp); mayr.setState((byte)1); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); } // public static void main(String[] args) { // new QqClientAcceptFriends03(); // } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddYouResp; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAcceptFriends02 extends JFrame { private ClientConServer ccs = ClientConServer.getCcs(); private JFrame qqClientFindJFrame; private int ownerqq,friendqq; public JFrame getQqClientFindJFrame() { return qqClientFindJFrame; } public void setQqClientFindJFrame(JFrame qqClientFindJFrame) { this.qqClientFindJFrame = qqClientFindJFrame; } JLabel haomaJLabel, nickJLabel, qqClientFindJLabel, findListJLabel, pleaseAccept; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma, nick; // 接受好友请求刷新 public void flushAccept(int friendsQq, String nickName, String note) { this.friendqq = friendsQq; findJTextArea.setText(note); haomaJLabel.setText(friendsQq + ""); nickJLabel.setText(nickName); } public QqClientAcceptFriends02(int ownerqq) { // this.ownerqq = ownerqq; haoma = "1001"; nick = "小明"; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian02/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); haomaJLabel = new JLabel(haoma); nickJLabel = new JLabel(nick); pleaseAccept = new JLabel("请求添加好友"); findJTextArea = new JTextArea(); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 315, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); nickJLabel.setFont(i); pleaseAccept.setFont(i); // qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(2, 5, 30, 20); qqClientFindJFrame.add(nickJLabel); nickJLabel.setBounds(32, 5, 40, 20); qqClientFindJFrame.add(pleaseAccept); pleaseAccept.setBounds(68, 5, 110, 20); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setType(MsgType.command_addYouResp); mayr.setSrc(QqClientAcceptFriends02.this.ownerqq); mayr.setDest(friendqq); mayr.setState((byte)0); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setSrc(QqClientAcceptFriends02.this.ownerqq); mayr.setDest(friendqq); System.out.println("friendqq:"+friendqq); mayr.setType(MsgType.command_addYouResp); mayr.setState((byte)1); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); } // public static void main(String[] args) { // new QqClientAcceptFriends02(); // } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.sql.rowset.JdbcRowSet; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import msg.MsgAddYouResp; import msg.MsgType; import client.ClientConServer; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAcceptFriends01 extends JFrame { private ClientConServer ccs = ClientConServer.getCcs(); private JFrame qqClientFindJFrame; private int ownerqq,friendqq; public JFrame getQqClientFindJFrame() { return qqClientFindJFrame; } public void setQqClientFindJFrame(JFrame qqClientFindJFrame) { this.qqClientFindJFrame = qqClientFindJFrame; } JLabel haomaJLabel, nickJLabel, qqClientFindJLabel, findListJLabel, pleaseAccept; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma, nick; // 接受好友请求刷新 public void flushAccept(int friendsQq, String nickName, String note) { this.friendqq = friendsQq; findJTextArea.setText(note); haomaJLabel.setText(friendsQq + ""); nickJLabel.setText(nickName); } public QqClientAcceptFriends01(int ownerqq) { // this.ownerqq = ownerqq; haoma = "1001"; nick = "小明"; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian01/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); haomaJLabel = new JLabel(haoma); nickJLabel = new JLabel(nick); pleaseAccept = new JLabel("请求添加好友"); findJTextArea = new JTextArea(); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 315, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); nickJLabel.setFont(i); pleaseAccept.setFont(i); // qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(2, 5, 30, 20); qqClientFindJFrame.add(nickJLabel); nickJLabel.setBounds(32, 5, 40, 20); qqClientFindJFrame.add(pleaseAccept); pleaseAccept.setBounds(68, 5, 110, 20); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); startFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setType(MsgType.command_addYouResp); mayr.setSrc(QqClientAcceptFriends01.this.ownerqq); mayr.setDest(friendqq); mayr.setState((byte)0); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); MsgAddYouResp mayr = new MsgAddYouResp(); mayr.setSrc(QqClientAcceptFriends01.this.ownerqq); mayr.setDest(friendqq); System.out.println("friendqq:"+friendqq); mayr.setType(MsgType.command_addYouResp); mayr.setState((byte)1); mayr.setTotalLen(4+1+4+4+1); try { ccs.sendMsg(mayr); } catch (Exception e1) { e1.printStackTrace(); } } }); } // public static void main(String[] args) { // new QqClientAcceptFriends01(); // } }
package view; import java.awt.Choice; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import tools.RoundButton; @SuppressWarnings("serial") public class QqClientAcceptFriends extends JFrame { static JFrame qqClientFindJFrame; JLabel haomaJLabel, nickJLabel, qqClientFindJLabel, findListJLabel ,pleaseAccept; RoundButton exitFindJButton, startFindJButton; Choice lieBiao; JTextArea findJTextArea; Font f, i; String haoma,nick; public QqClientAcceptFriends() { // haoma = "1001"; nick = "小明"; qqClientFindJFrame = new JFrame(); qqClientFindJLabel = new JLabel(new ImageIcon( "image/listJiemian01/findLable.jpg")); exitFindJButton = new RoundButton("Exit"); startFindJButton = new RoundButton("Add"); haomaJLabel = new JLabel(haoma); nickJLabel = new JLabel(nick); pleaseAccept = new JLabel("请求添加好友"); findJTextArea = new JTextArea("我是你的老同学!"); findListJLabel = new JLabel("请选择加入列表"); lieBiao = new Choice(); f = new Font("Segoe Script", Font.BOLD, 12); i = new Font("DaiYu", Font.BOLD, 16); // 窗口设置 qqClientFindJFrame.setUndecorated(true); qqClientFindJFrame.setBounds(694, 315, 350, 110); qqClientFindJFrame.setVisible(true); qqClientFindJFrame.setResizable(false); qqClientFindJFrame.setLayout(null); // exitFindJButton.setFont(f); startFindJButton.setFont(f); findJTextArea.setFont(i); findListJLabel.setFont(i); nickJLabel.setFont(i); pleaseAccept.setFont(i); // qqClientFindJFrame.add(haomaJLabel); haomaJLabel.setBounds(2, 5, 30, 20); qqClientFindJFrame.add(nickJLabel); nickJLabel.setBounds(32, 5, 40, 20); qqClientFindJFrame.add(pleaseAccept); pleaseAccept.setBounds(68,5, 110, 20); qqClientFindJFrame.add(startFindJButton); startFindJButton.setBounds(15, 30, 65, 65); qqClientFindJFrame.add(exitFindJButton); exitFindJButton.setBounds(90, 30, 65, 65); qqClientFindJFrame.add(findJTextArea); findJTextArea.setBounds(180, 10, 150, 30); qqClientFindJFrame.add(findListJLabel); findListJLabel.setBounds(190, 40, 150, 30); qqClientFindJFrame.add(lieBiao); lieBiao.setBounds(180, 70, 150, 20); lieBiao.add("Friends"); lieBiao.add("Stranger"); lieBiao.add("BlackList"); qqClientFindJFrame.add(qqClientFindJLabel); qqClientFindJLabel.setBounds(0, 0, 350, 110); exitFindJButton.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { qqClientFindJFrame.setVisible(false); } }); } public static void main(String[] args) { new QqClientAcceptFriends(); } }
package view; import java.awt.Cursor; import java.awt.Point; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; class Drag { // AWT中的POINT 类 JFrame ff = null; public Drag(JFrame frame) { this.ff = frame; } Point loc = null; Point tmp = null; boolean isDragged = false; // 写一个方法里面存放鼠标事件 public void setDragable() { // 给label添加鼠标事件 ff.addMouseListener(new MouseAdapter() { public void mouseReleased(MouseEvent e) { isDragged = false; ff.setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); } // 鼠标按下触发 public void mousePressed(MouseEvent e) { tmp = new Point(e.getX(), e.getY()); isDragged = true; ff.setCursor(new Cursor(Cursor.MOVE_CURSOR)); } }); // 添加鼠标事件 ff.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { // public void mouseDragged(MouseEvent e) { if (isDragged) { loc = new Point(ff.getLocation().x + e.getX() - tmp.x, ff .getLocation().y + e.getY() - tmp.y); ff.setLocation(loc); } } }); } }