assFindFriend2extendsJFrame{//查找好友类
JLabeljLabel1=newJLabel();
JButtonfind2=newJButton();
JButtonjButton1=newJButton();
JButtonjButton2=newJButton();
JButtonjButton3=newJButton();
JListlist2;
///////////////////以下是好友的呢称,性别等信息
Vectornickname=newVector();
Vectorsex=newVector();
Vectorplace=newVector();
Vectorjicq=newVector();
Vectorip=newVector();
Vectorpic=newVector();
Vectorstatus=newVector();
Vectoremails=newVector();
Vectorinfos=newVector();
//以下临时保存好友的呢称,性别等信息
Vectortmpjicq=newVector();//jicqid
Vectortmpname=newVector();//jicqname
Vectortmpip=newVector();//ip
Vectortmppic=newVector();//picinfo
Vectortmpstatus=newVector();//status
Vectortmpemail=newVector();
Vectortmpinfo=newVector();
//以下创建网络相关变量
Socketsocket;
BufferedReaderin;
PrintWriterout;
intmyid;
Stringserverhost;
intservport;
DatagramPacketsendPacket;
DatagramSocketsendSocket;
intsendPort=5000;
//////////////////
JPopupMenufindmenu=newJPopupMenu();
JMenuItemlook=newJMenuItem();
JMenuItemadd=newJMenuItem();
publicFindFriend2(intwhoami,Stringhost,intport){//查找好友类构造函数
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try{
serverhost=host;
servport=port;
myid=whoami;
jbInit();
}
catch(Exceptione){
e.printStackTrace();
}//以下与服务器连接
try{socket=newSocket(InetAddress.getByName(serverhost),servport);
in=newBufferedReader(newInputStreamReader(socket.getInputStream()));
out=newPrintWriter(newBufferedWriter(
newOutputStreamWriter(socket.getOutputStream())),true);
sendSocket=newDatagramSocket();
}catch(IOExceptione1){}
}
privatevoidjbInit()throwsException{//以下是程序界面
jLabel1.setText("下面是在线的朋友");
jLabel1.setBounds(newRectangle(11,11,211,18));
this.getContentPane().setLayout(newFlowLayout());
find2.setText("查找");
find2.setBounds(newRectangle(8,289,79,29));
find2.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(MouseEvente){
find2_mouseClicked(e);
}
});
jButton1.setText("next");
jButton1.setBounds(newRectangle(110,288,79,29));
jButton2.setText("up");
jButton2.setBounds(newRectangle(211,285,79,29));
jButton3.setText("cancel");
jButton3.setBounds(newRectangle(317,289,79,29));
//nickname=newVector();
//sex=newVector();
//place=newVector();
ListModelmodel=newFindListModel(nickname,sex,place);//列表模型
ListCellRendererrenderer=newFindListCellRenderer();
list2=newJList(model);
list2.setSize(200,200);
list2.setBackground(newColor(255,255,210));
list2.setAlignmentX((float)1.0);
list2.setAlignmentY((float)1.0);
list2.setCellRenderer(renderer);
list2.setVisibleRowCount(7);
list2.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmousePressed(MouseEvente){
list2_mousePressed(e);
}
});
look.setText("查看资料");
add.setText("加为好友");
add.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmousePressed(MouseEvente){
add_mousePressed(e);
}
});
this.getContentPane().add(jLabel1,null);
this.getContentPane().add(newJScrollPane(list2));
this.getContentPane().add(find2,null);
this.getContentPane().add(jButton1,null);
this.getContentPane().add(jButton2,null);
this.getContentPane().add(jButton3,null);
findmenu.add(look);
findmenu.add(add);
}//以下是关闭本窗口
protectedvoidprocessWindowEvent(WindowEvente){
super.processWindowEvent(e);
if(e.getID()==WindowEvent.WINDOW_CLOSING){
//this.dispose();
this.hide();
}
}
//以下向服务器发送查找好友请求
voidfind2_mouseClicked(MouseEvente){
out.println("find");
DefaultListModelmm=(DefaultListModel)list2.getModel();
/////////////////findfriendinfo
try{
Strings="";
//从服务器读取好友信息
do{s=in.readLine();
if(s.equals("over"))break;
nickname.add(s);
sex.add(in.readLine());
place.add(in.readLine());
ip.add(in.readLine());
emails.add(in.readLine());
infos.add(in.readLine());
}while(!s.equals("over"));
/////////////endfindinfo
//readtheirjicqno
inttheirjicq,picinfo,sta;
for(intx=0;x
=friendnames.size()){
fromunknow=true;//收到陌生人的消息
JOptionPane.showMessageDialog(this,"收到陌生人"+infofromip+"的消息","ok",JOptionPane.INFORMATION_MESSAGE);
}
}while(index4
上一篇:基于JAVA的安全电子商务(论文和程序)
下一篇:感人的博士论文致谢词