package com.wenqier.chat.client;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
public class ChatClient extends javax.swing.JFrame
{
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private JPanel jPanel3;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextArea jTextArea2;
private javax.swing.JTextField jTextField;
private ClientConnection clientConnection;
public ChatClient(ClientConnection clientConnection)
{
this.clientConnection = clientConnection;
initComponents();
}
public JTextArea getJTextArea2()
{
return jTextArea2;
}
public JTextArea getJTextArea1()
{
return jTextArea1;
}
private void initComponents()
{
jPanel1 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jTextField = new javax.swing.JTextField(20);
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jPanel2 = new javax.swing.JPanel();
jScrollPane2 = new javax.swing.JScrollPane();
jTextArea2 = new javax.swing.JTextArea();
jPanel3 = new JPanel();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("聊天室");
setResizable(false);
jPanel1.setBorder(BorderFactory.createTitledBorder("聊天室信息"));
jPanel2.setBorder(BorderFactory.createTitledBorder("在线用户列表"));
jTextArea1.setColumns(30);
jTextArea1.setRows(25);
jTextArea2.setColumns(20);
jTextArea2.setRows(25);
this.jTextArea1.setEditable(false);
this.jTextArea2.setEditable(false);
jPanel3.add(jTextField);
jPanel3.add(jButton1);
jPanel3.add(jButton2);
jPanel1.setLayout(new BorderLayout());
jPanel1.add(jScrollPane1, BorderLayout.NORTH);
jPanel1.add(jPanel3, BorderLayout.SOUTH);
jPanel2.add(jScrollPane2);
jScrollPane1.setViewportView(jTextArea1);
jScrollPane2.setViewportView(jTextArea2);
jButton1.setText("发送");
jButton2.setText("清屏");
jButton1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
ChatClient.this.sendMessage(e);
}
});
this.addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
try
{
ChatClient.this.clientConnection.sendMessage("client closed", "5");
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
});
this.setLayout(new FlowLayout());
this.getContentPane().add(jPanel1);
this.getContentPane().add(jPanel2);
this.pack();
this.setVisible(true);
}
private void sendMessage(ActionEvent event)
{
// 用户聊天的数据
String message = this.jTextField.getText();
// 清空聊天数据
this.jTextField.setText("");
// 向服务器端发送聊天数据
this.clientConnection.sendMessage(message, "2");
}
}
最近下载更多
13133117021 LV5
2024年12月26日
zeng1206 LV7
2023年12月28日
hentai233 LV1
2023年11月17日
vitcheu LV1
2023年5月27日
Kevin_001 LV6
2022年7月3日
wxh1234567 LV4
2022年6月20日
106sadadwd LV2
2022年6月18日
haneri LV1
2022年6月5日
GaaraNi LV1
2022年4月21日
炸蝎子奥特 LV1
2022年2月12日
最近浏览更多
13133117021 LV5
2024年12月26日
Reach_hehe LV1
2024年12月6日
qwertasdfgkwuejwjwjw LV1
2024年6月27日
ethan_
2024年5月29日
暂无贡献等级
28128觅北 LV2
2024年5月22日
krispeng LV15
2024年4月15日
woldxy LV12
2024年4月1日
taoshen95 LV16
2024年1月18日
zeng1206 LV7
2023年12月28日
陈小灏 LV18
2023年12月27日

