myqq.java
来自「java编写的聊天室程序」· Java 代码 · 共 143 行
JAVA
143 行
import javax.swing.*;
import javax.swing.event.*;
//import java.awt.Color;
import java.awt.event.*;
import java.awt.Event;
public class MyQQ extends JFrame implements ActionListener,ListSelectionListener,KeyListener
{JPanel panel;
static JTextArea textArea1;
static JList list1;
JButton button1;
JTextField edit1;
JLabel label1;
String user,address;
static String[]text=new String[12];
MyQQ(String user,String address)
{super("小春局域网聊天室"+"--"+user+"--"+address);
this.user=user;
this.address=address;
panel=(JPanel)this.getContentPane();
panel.setLayout(null);
list1=new JList();
panel.add(list1);
list1.reshape(10,10,80,235);
textArea1=new JTextArea();
panel.add(textArea1);
textArea1.reshape(100,10,400,235);
label1=new JLabel("");
panel.add(label1);
label1.reshape(10,255,80,25);
edit1=new JTextField();
panel.add(edit1);
edit1.reshape(100,255,330,25);
button1=new JButton("发送");
panel.add(button1);
button1.reshape(440,255,60,25);
button1.addActionListener(this);
list1.addListSelectionListener(this);
edit1.addKeyListener(this);
list1.setSelectedIndex(0);
this.setArray();
this.setResizable(false);
this.setSize(520,320);
this.setVisible(true);
}
public void actionPerformed(ActionEvent event)
{
if(event.getSource()==button1)
{String message=edit1.getText();
if(message.length()==0)
return;
String str1=user+"对"+label1.getText()+"说: "+message;
Client.sendMessage(str1); //发送给服务器
edit1.setText(null);
}
}
public void valueChanged(ListSelectionEvent e)
{label1.setText((String)list1.getSelectedValue());
}
public static void setList(String[]listDate) //显示再线用户
{
int i=list1.getSelectedIndex();
list1.setListData(listDate);
int n=listDate.length-1;
if(i>=n)
list1.setSelectedIndex(n);
else
list1.setSelectedIndex(i);
}
public static void appendText(String message)
{
for(int i=text.length-1;i>0;i--)
{text[i]=text[i-1];
}
text[0]=message;
textArea1.setText(null);
for(int i=0;i<text.length;i++)
{textArea1.insert(text[i]+'\n',0);
}
}
private void setArray()
{
for(int i=0;i<text.length;i++)
{text[i]=" ";
}
}
public void keyPressed(KeyEvent event)
{if(event.getKeyCode()==Event.ENTER)
{String message=edit1.getText();
if(message.length()==0)
return;
String str1=user+"对"+label1.getText()+"说: "+message;
Client.sendMessage(str1); //发送给服务器
edit1.setText(null);
}
}
public void keyTyped(KeyEvent event)
{
}
public void keyReleased(KeyEvent event)
{
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?