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

📄 查找好友.java

📁 我用JAVA写的QQ程序
💻 JAVA
字号:
/*
 * 查找好友.java
 *
 * Created on 2007年5月10日, 下午3:37
 */

package 客户端程序包;

import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.Socket;
import java.util.StringTokenizer;
import javax.swing.JOptionPane;


/**
 *
 * @author  软件046班  张金凤
 */
public class 查找好友 extends javax.swing.JFrame implements Runnable{
    
    /** Creates new form 查找好友 */
    public 查找好友(Socket clientsocket,String QQNumber,String NickName) {
        initComponents();
        this.setBounds(450,220,430,330);
        this.setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
        this.QQNumber=QQNumber;
        this.clientsocket=clientsocket;
        this.NickName=NickName;
        Array=new String[100];
        String code="8";
        SendAndReceive send=new SendAndReceive(this.clientsocket,code);
        send.SendMessage();
    }
    
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
    private void initComponents() {
        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        成员列表 = new javax.swing.JList();
        加为好友 = new javax.swing.JButton();
        取消 = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setBackground(new java.awt.Color(255, 255, 255));
        setForeground(new java.awt.Color(153, 153, 255));
        jPanel1.setBackground(new java.awt.Color(255, 255, 255));
        jLabel1.setFont(new java.awt.Font("宋体", 0, 18));
        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText("\u52a0\u597d\u53cb");

        成员列表.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                成员列表MouseClicked(evt);
            }
        });

        jScrollPane1.setViewportView(成员列表);

        加为好友.setText("\u52a0\u4e3a\u597d\u53cb");
        加为好友.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                加为好友MouseClicked(evt);
            }
        });

        取消.setText("\u53d6\u6d88");
        取消.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                取消MouseClicked(evt);
            }
        });

        jLabel2.setText("\u5728\u7ebf\u6210\u5458\uff1a");

        jLabel3.setText("\u6ce8\uff1a\u5148\u9009\u4e2d\u8981\u52a0\u5165\u7684\u597d\u53cb\u7684\u53f7\u7801\u518d\u6309\u52a0\u4e3a\u597d\u53cb\u6309\u94ae\u6216\u8005\u53cc\u51fb\u53f7\u7801");

        org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .add(134, 134, 134)
                .add(jLabel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 125, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(165, Short.MAX_VALUE))
            .add(jPanel1Layout.createSequentialGroup()
                .add(56, 56, 56)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                    .add(jLabel2)
                    .add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 289, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(79, Short.MAX_VALUE))
            .add(jPanel1Layout.createSequentialGroup()
                .add(76, 76, 76)
                .add(加为好友)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 111, Short.MAX_VALUE)
                .add(取消, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 85, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(71, 71, 71))
            .add(jPanel1Layout.createSequentialGroup()
                .add(39, 39, 39)
                .add(jLabel3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .add(49, 49, 49))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .add(jLabel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 32, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(6, 6, 6)
                .add(jLabel2)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                .add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 154, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(17, 17, 17)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(加为好友)
                    .add(取消))
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 12, Short.MAX_VALUE)
                .add(jLabel3)
                .addContainerGap())
        );

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void 成员列表MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_成员列表MouseClicked
// TODO 将在此处添加您的处理代码:
        if(evt.getClickCount()==2){
        int index =  成员列表.locationToIndex(evt.getPoint());
        String content=(String)成员列表.getModel().getElementAt(index);
        String number=content.substring(0,9);
        System.out.println("我选的号码是:"+number);
        new SendAndReceive(this.clientsocket,"Add"+number+this.QQNumber+this.NickName).SendMessage();
        JOptionPane.showMessageDialog(null,"请求已发送,请耐心等待回应!","消息",JOptionPane.INFORMATION_MESSAGE); 
        this.dispose();
        }
    }//GEN-LAST:event_成员列表MouseClicked

    private void 加为好友MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_加为好友MouseClicked
// TODO 将在此处添加您的处理代码:
        int index =  成员列表.getSelectedIndex();
        String content=(String)成员列表.getModel().getElementAt(index);
        String number=content.substring(0,9);
        System.out.println("我选的号码是:"+number);
        new SendAndReceive(this.clientsocket,"Add"+number+this.QQNumber+this.NickName).SendMessage();
        JOptionPane.showMessageDialog(null,"请求已发送,请耐心等待回应!","消息",JOptionPane.INFORMATION_MESSAGE); 
        this.dispose();
    }//GEN-LAST:event_加为好友MouseClicked

    private void 取消MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_取消MouseClicked
// TODO 将在此处添加您的处理代码:
        this.dispose();
    }//GEN-LAST:event_取消MouseClicked

    public void run() {
       boolean IsReceived=false;
       while(true){
         if(!IsReceived){   
         try{
              System.out.println("这次运行了这里1");
              StringTokenizer St=new StringTokenizer(好友界面.RequireByFindFriend,"|");
               System.out.println("这次运行了这里2");
            
              int i=0;
              while(St.hasMoreTokens()){
                  IsReceived=true;
                  Array[i]=St.nextToken();
                  i++;
              }
              成员列表.setListData(Array);
              
          }catch(NullPointerException e){
             continue;
          }
        }
        
       }
    }
    
     private void CloseClicked(java.awt.event.MouseEvent evt){
         System.out.println("结束");
         dispose();
    }
    /**
     * @param args the command line arguments
     */
    
    private Socket clientsocket=null;
    private String QQNumber=null;
    private String[] Array=null;
    private String List=null;
    private String NickName=null;
    // 变量声明 - 不进行修改//GEN-BEGIN:variables
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JButton 加为好友;
    private javax.swing.JButton 取消;
    private javax.swing.JList 成员列表;
    // 变量声明结束//GEN-END:variables
    
}

⌨️ 快捷键说明

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