friend.java

来自「java简易在线聊天程序」· Java 代码 · 共 64 行

JAVA
64
字号
package chatDog;
import javax.swing.*;
import java.awt.*;

public class Friend extends JButton implements Flashable,Const{
	public String chatNote=null;
	public String IP;
	public String name;
	public String picAddr;
	public boolean isOnline;
	public boolean isWindowShow;
	public chatGUI chatWindow;
	public int ID;
	public int port;
	
	private JLabel nameLabel;
	private JPanel pane=new JPanel();
	
	
	Friend(String name,String IP,String picAddr){
		this.setIcon((Icon)new ImageIcon(picAddr));
		this.name=name;
		this.IP=IP;
		this.picAddr=picAddr;
		this.port=SERVER_PORT;
		this.setPreferredSize(new Dimension(75,75));
		nameLabel=new JLabel(name);
		
		pane.setPreferredSize(new Dimension(75,120));
		pane.add(this);
		pane.add(nameLabel);
		
		isWindowShow=false;
		isOnline=false;
		chatWindow=null;
	}
	
	public Friend clone(){
		Friend newFriend=new Friend(name,IP,picAddr);
		newFriend.chatNote=chatNote;
		newFriend.IP=IP;
		newFriend.picAddr=picAddr;
		newFriend.isOnline=isOnline;
		newFriend.isWindowShow=isWindowShow;
		newFriend.chatWindow=chatWindow;
		newFriend.ID=ID;
		newFriend.setIsOnline(isOnline);
		newFriend.setIcon((Icon)(new ImageIcon(picAddr)));
		newFriend.port=port;
		return newFriend;
	}
	public JPanel getPane(){
		return this.pane;
	}
	public void setIsOnline(boolean b){
		isOnline=b;
		System.out.println("System-setIsOnline-"+name+":"+b);
		if(b)nameLabel.setText(name+" 在线");
		else nameLabel.setText(name+" 离线");
		pane.repaint();
	}
	public void flash(){
	}
}

⌨️ 快捷键说明

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