⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 muiltqqfrendsend.java

📁 LUMAQQ源代码 JAVA 地球人都知道
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	 * This method initializes jTextArea2	
	 * 	
	 * @return javax.swing.JTextArea	
	 */
	private JTextArea getJTextArea2() {
		if (jTextArea2 == null) {
			
			jTextArea2 = new JTextArea(){
				   private static final long serialVersionUID = -8220994963464909915L;

				   {
				    setOpaque(false); // 设置透明
				   }

				   protected void paintComponent(Graphics g) {
					ImageIcon imageicon = new ImageIcon(getClass().getResource("/com/myqq/index_2.gif"));
				    g.drawImage(imageicon.getImage(), 50, 50, this);
				    super.paintComponent(g);
				   }
				  };
					jTextArea2.setForeground(Color.red);
					jTextArea2.setText("");
					jTextArea2.setBackground(Color.white);
			jTextArea2.selectAll();
			
		}
		return jTextArea2;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				MuiltQQfrendSend thisClass = new MuiltQQfrendSend();
				thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				thisClass.setVisible(true);
			}
		});
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(492, 452);
		this.setContentPane(getJContentPane());
		this.setTitle("QQ好友群发器[旅游版]v0.1");
		//mf = this;
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
//			jLabel3 = new JLabel();
//			jLabel3.setBounds(new Rectangle(218, 214, 187, 103));
//			jLabel3.setIcon(new ImageIcon(getClass().getResource("/com/myqq/index_2.gif")));
//			jLabel3.setText("JLabel");
			jLabel4 = new JLabel();
			jLabel4.setBounds(new Rectangle(174, 138, 108, 20));
			jLabel4.setText("操作日志:");
			jLabel2 = new JLabel();
			jLabel2.setBounds(new Rectangle(12, 33, 37, 19));
			jLabel2.setText("内容:");
			jLabel1 = new JLabel();
			jLabel1.setBounds(new Rectangle(229, 6, 36, 21));
			jLabel1.setText("密码:");
			jLabel = new JLabel();
			jLabel.setBounds(new Rectangle(12, 5, 52, 20));
			jLabel.setText("QQ号码:");
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(jLabel, null);
			jContentPane.add(getJTextField(), null);
			jContentPane.add(jLabel1, null);
			jContentPane.add(getJButton(), null);
			jContentPane.add(jLabel2, null);
			jContentPane.add(getJButton1(), null);
			jContentPane.add(jLabel4, null);
			jContentPane.add(getJPasswordField(), null);
			jContentPane.add(getJButton2(), null);
			jContentPane.add(getJButton3(), null);
			jContentPane.add(getJScrollPane(), null);
			jContentPane.add(getJScrollPane11(), null);
			jContentPane.add(getJScrollPane12(), null);
//			jContentPane.add(jLabel3, null);
		}
		return jContentPane;
	}

	public void qqEvent(QQEvent e) {
		System.out.println("事件ID:" + e.type);
    	/* 142*/        switch(e.type)
        {
/* <-MISALIGNED-> */ /* 142*/        default:
            break;
/* <-MISALIGNED-> */ /* 144*/        case 1: 
/* <-MISALIGNED-> */ /* 144*/            processLoginSuccess();
/* <-MISALIGNED-> */ /* 145*/            break;
/* <-MISALIGNED-> */ /* 147*/        case 2: 
/* <-MISALIGNED-> */ /* 147*/            processLoginFail();
/* <-MISALIGNED-> */ /* 148*/            break;
///* <-MISALIGNED-> */ /* 150*/        case 3: 
///* <-MISALIGNED-> */ /* 150*/            processLoginUnknownError();
///* <-MISALIGNED-> */ /* 151*/            break;
/* <-MISALIGNED-> */ /* 153*/        case 16: 
/* <-MISALIGNED-> */ /* 153*/            processSendIMSuccess();
/* <-MISALIGNED-> */ /* 154*/            break;
/* <-MISALIGNED-> */ /* 156*/        case 10: 
/* <-MISALIGNED-> */ /* 156*/            processChangeStatusSuccess();
/* <-MISALIGNED-> */ /* 157*/            break;
/* <-MISALIGNED-> */ /* 159*/        case 12: 
/* <-MISALIGNED-> */ /* 159*/            processGetFriendes(e);
/* <-MISALIGNED-> */ /* 160*/            break;
/* <-MISALIGNED-> */ /* 162*/        case 33: 
/* <-MISALIGNED-> */ /* 162*/            if(e.operation == 22)
/* <-MISALIGNED-> */ /* 163*/                processSendIMFail();
                                         else
                                           processSendIMFail();
                                         break;
        }
		
	}
	
	private void processLoginSuccess(){
		this.writeActionLog("QQ登陆成功~~");
		jButton2.setEnabled(true);
		jButton1.setEnabled(true);
		jButton3.setEnabled(true);
	}
	
	private void processLoginFail(){
		this.writeActionLog("QQ登陆失败,请重新登陆!");
		jButton.setEnabled(true);
		jButton3.setEnabled(false);
	}
	
	private void processSendIMSuccess(){
		
		this.writeActionLog("消息发送成功~~");
		sendOneMesByList();
	}
	private void processSendIMFail(){
		this.writeActionLog("消息发送失败!");
		sendOneMesByList();
	}
	private void processChangeStatusSuccess(){
	//	this.writeActionLog("发送消息....!");
	}
	/**
	 *获取好友QQ列表
	 */
	private void processGetFriendes(QQEvent e){
		GetFriendListReplyPacket gf = (GetFriendListReplyPacket)e.getSource();
		java.util.List  friends = (java.util.List) gf.friends;
		for(int i = 0 ; i < friends.size() ; i++){
			QQFriend qf = (QQFriend)friends.get(i);
			jTextArea1.setText(jTextArea1.getText() + String.valueOf(qf.qqNum) + "\n");
		}
		if((int)gf.position != 65535){
		  client.getFriendList(gf.position);
		}else{
			jButton2.setEnabled(true);
			jButton1.setEnabled(true);
		}
	}
	
	private void writeActionLog(String str){
		jTextArea2.setText(jTextArea2.getText() + str + "\n");
		jTextArea2.selectAll();
	}
	
	private void writeActionLogNoEnter(String str){
		jTextArea2.setText(jTextArea2.getText() + str);
		jTextArea2.selectAll();
	}
	
	private void disView(){
		
	}
	
	/**
	 * 登陆
	 *
	 */
	private void loginQQ(){
		
		String userid = "";
		String userpassword = "";
		userid = jTextField.getText();
		userpassword = jPasswordField.getText();
		try{
		   yourQQ = Integer.parseInt(userid);
		}catch(NumberFormatException e){
		   this.writeActionLog("请输入你正确的QQ号码!");
		   jButton.setEnabled(true);
		   return;
		}
		client = new QQClient();
		client.setConnectionPoolFactory(new PortGateFactory());
		QQUser user = new QQUser(yourQQ, userpassword);
		client.addQQListener(this);
		user.setUdp(true);
		client.setUser(user);
		//client.setLoginServer("sz.tencent.com");
		client.setLoginServer("58.61.32.40");
		this.writeActionLog("开始登陆.......");
		try {
			client.login();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			this.writeActionLog("登陆出错,请重新登陆!");
			jButton.setEnabled(true);
		}
		
	}
	
	private void sendMesses(int qq){
		qqlist = new Vector();
		String comext = "";//发送的内容;
		comext = jTextArea.getText();
		int friendQQ = 0;
		String f_qqes = jTextArea1.getText();
		if(comext.equals("")){
			this.writeActionLog("发送内容不能为空!");
			return;
		}
		String[] fqs = f_qqes.split("\n");
		for(int i = 0 ; i < fqs.length ; i++){
			if(fqs[i].trim().equals("")){
				continue;
			}
			try{
				Integer.parseInt(fqs[i].trim());
			}catch(NumberFormatException e){
				this.writeActionLog(fqs[i] + "号码格式错误不能被加入发送队列!");
				continue;
			}
			qqlist.add(fqs[i].trim());
		}
		if(qqlist.size() == 0){
			this.writeActionLog("QQ列表中找不到Q号!");
			return;
		}else{
			this.writeActionLog("群发总数:" + qqlist.size());
			sendOneMesByList();
		}
		
	}
	
	/**
	 * 发送单个消息
	 *
	 */
	private void sendOneMesByList(){
		jButton1.setEnabled(false);
		String comext = "";//发送的内容;
		comext = jTextArea.getText();
		if(qqlist.size() != 0){
			int idx = qqlist.size() - 1;
			String friend_qq = (String)qqlist.get(idx);
			int int_qq = Integer.parseInt(friend_qq);
			client.sendIM(int_qq,Util.getBytes(comext));
			this.writeActionLog("正在向" + int_qq + "发送信息>>>>>");
			qqlist.remove(idx);
		}else{
			this.writeActionLog("群发完毕!");
			jButton1.setEnabled(true);
		}
	}
	
	/**
	 *
	 *退出
	 */
	private void qqlogout(){
		client.logout();
        client.release();
        jButton.setEnabled(true);
        jButton1.setEnabled(false);
        jButton2.setEnabled(false);
        jButton3.setEnabled(false);
        this.writeActionLog("QQ退出");
	}
	
	
	

}  //  @jve:decl-index=0:visual-constraint="142,17"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -