package app;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import java.util.List;
import javax.swing.JButton;
import javax.swing.JScrollPane;
import javax.swing.JTree;

import javax.swing.WindowConstants;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.SwingUtilities;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreeModel;
import javax.swing.tree.TreePath;

import qq.Friend;
import qq.Group;
import qq.QQXy;

/**
 * This code was edited or generated using CloudGarden's Jigloo SWT/Swing GUI
 * Builder, which is free for non-commercial use. If Jigloo is being used
 * commercially (ie, by a corporation, company or business for any purpose
 * whatever) then you should purchase a license for each developer using Jigloo.
 * Please visit www.cloudgarden.com for details. Use of Jigloo implies
 * acceptance of these licensing terms. A COMMERCIAL LICENSE HAS NOT BEEN
 * PURCHASED FOR THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED LEGALLY FOR
 * ANY CORPORATE OR COMMERCIAL PURPOSE.
 */
public class JFrameFriend extends javax.swing.JFrame {
	private JTree tree;
	private JScrollPane jScrollPane1;
	private JButton jButton1;

	private List<Group> groups;

	private QQXy qq = Public.getQQInstance();

	{
		// Set Look & Feel
		try {
			javax.swing.UIManager
					.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
		} catch (Exception e) {
			//e.printStackTrace();
		}
	}

	/**
	 * Auto-generated main method to display this JFrame
	 */

	public JFrameFriend() {
		super();
		initGUI();
		new Thread(new Runnable() {
			@Override
			public void run() {
				// TODO Auto-generated method stub
				getGroups();
			}
		}).start();
	}

	private void getGroups() {
		setTitle("请稍候,正在获取好友列表..");
		DefaultMutableTreeNode root = new DefaultMutableTreeNode("好友分组");
		groups = qq.getGroups();
		for (Group g : groups) {
			DefaultMutableTreeNode groupNode = new DefaultMutableTreeNode(
					g.getName() + g.getNum());
			List<Friend> list = qq.getFriends(g);
			for (Friend f : list) {
				groupNode.add(new DefaultMutableTreeNode("(" + f.getQq() + ")"
						+ f.getName()));
			}
			root.add(groupNode);
		}
		tree.setModel(new DefaultTreeModel(root));
		tree.setVisible(true);
		setTitle("3GQQ");
	}

	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			setResizable(false);
			getContentPane().setLayout(null);
			pack();
			this.setSize(351, 498);
			setLocationRelativeTo(null);
			this.addWindowListener(new WindowAdapter() {
				public void windowClosing(WindowEvent evt) {
					thisWindowClosing(evt);
				}
			});
			{
				jScrollPane1 = new JScrollPane();
				getContentPane().add(jScrollPane1);
				jScrollPane1.setBounds(16, 13, 312, 403);
				{
					tree = new JTree();
					jScrollPane1.setViewportView(tree);
					tree.setVisible(false);
					tree.setBounds(259, 78, 132, 229);
					tree.setPreferredSize(new java.awt.Dimension(304, 407));
					tree.addTreeSelectionListener(new TreeSelectionListener() {
						public void valueChanged(TreeSelectionEvent evt) {
							treeValueChanged(evt);
						}
					});
				}
			}
			{
				jButton1 = new JButton();
				getContentPane().add(jButton1);
				jButton1.setText("\u5237\u65b0\u5217\u8868");
				jButton1.setBounds(20, 426, 76, 30);
				jButton1.addMouseListener(new MouseAdapter() {
					public void mouseClicked(MouseEvent evt) {
						jButton1MouseClicked(evt);
					}
				});
			}
		} catch (Exception e) {
			//e.printStackTrace();
		}
	}

	private void treeValueChanged(TreeSelectionEvent evt) {
		DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode) tree
				.getLastSelectedPathComponent();
	
		if (treeNode.getParent() == null || evt.getNewLeadSelectionPath().toString().equals("[好友分组]")) {
			return;
		}
		
		if (treeNode.getParent().toString().equals("好友分组")) {
			// 点击了具体分组

		} else {
			// 点击了具体好友
			new JFrameMessage("与"+treeNode.toString()+"聊天中").setVisible(true);
			
		}

	}
	
	private void thisWindowClosing(WindowEvent evt) {
		qq.logout();
		System.exit(0);
	}
	
	private void jButton1MouseClicked(MouseEvent evt) {
		new Thread(new Runnable() {
			@Override
			public void run() {
				// TODO Auto-generated method stub
				getGroups();
			}
		}).start();
	}

}
最近下载更多
Aoifee  LV4 2021年11月11日
nyb4613  LV8 2020年11月23日
xuweisong2010  LV28 2019年12月19日
aisuzhen  LV10 2019年11月18日
yongzheng132  LV17 2019年6月24日
随风随影  LV2 2019年2月27日
盗码nsdjdhfhfjn  LV4 2019年1月18日
不败神话  LV9 2019年1月7日
挚爱py  LV2 2018年11月9日
shenrc  LV2 2018年11月1日
最近浏览更多
goccgoccgocc  LV4 5月9日
krispeng  LV13 4月16日
陈小灏  LV15 2023年12月26日
luamweise 2023年10月18日
暂无贡献等级
wertttak  LV1 2023年9月26日
微信网友_6444139264921600  LV6 2023年4月29日
臧家旺  LV3 2023年3月23日
叁卍石  LV5 2022年10月11日
苏心糖  LV7 2022年6月28日
冰封111111  LV1 2022年6月23日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友