📄 b.java
字号:
import java.awt.*;
import javax.swing.*;
import java.io.*;
import java.net.*;
import java.awt.event.*;
//聊天
public class b extends JFrame implements ActionListener,Runnable{
/**
* @param args
*
*/
private JTextArea jTextArea = new JTextArea();
private JTextArea jTextArea1 = new JTextArea();
private JButton jButton = new JButton("发送");
private JPanel jPanel = new JPanel();
private JPanel jPanel1 = new JPanel();
//private JPanel p2 = new JPanel();
public b()
{
}
public void run() {
getContentPane().setLayout(null);
//p1.add(jta2,BorderLayout.CENTER);
//p1.add(jbt,BorderLayout.SOUTH);
//jta1.setEditable(false);
/*jTextArea.setLineWrap(true);
jta1.setWrapStyleWord(true);
jta2.setLineWrap(true);
jta2.setWrapStyleWord(true);
getContentPane().add(new JScrollPane(jta1));
getContentPane().add(new JScrollPane(jta2));
getContentPane().add(jbt);*/
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jButton.setBounds(new Rectangle(204, 286, 120, 35));
jTextArea.setBackground(new Color(223, 235, 236));
jTextArea.setEditable(false);
jTextArea1 = new JTextArea();
GridBagConstraints gridBagConstraints1 = new GridBagConstraints();
gridBagConstraints1.fill = GridBagConstraints.BOTH;
gridBagConstraints1.gridy = 0;
gridBagConstraints1.weightx = 1.0;
gridBagConstraints1.weighty = 1.0;
gridBagConstraints1.gridx = 0;
jPanel1 = new JPanel();
jPanel1.setLayout(new GridBagLayout());
jPanel1.setBounds(new Rectangle(0, 172, 518, 90));
jPanel1.add(new JScrollPane(jTextArea1), gridBagConstraints1);
GridBagConstraints gridBagConstraints = new GridBagConstraints();
gridBagConstraints.fill = GridBagConstraints.BOTH;
gridBagConstraints.gridy = 0;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
gridBagConstraints.gridx = 0;
jPanel = new JPanel();
jPanel.setLayout(new GridBagLayout());
jPanel.setBounds(new Rectangle(1, 0, 517, 172));
jPanel.add(new JScrollPane(jTextArea), gridBagConstraints);
getContentPane().add(jPanel, null);
getContentPane().add(jPanel1, null);
getContentPane().add(jButton, null);
setTitle("聊天室");
setSize(527, 373);
setVisible(true);
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jButton.addActionListener(this);
try
{
ServerSocket serverSocket = new ServerSocket(1001);
while(true)
{
Socket socket = serverSocket.accept();
try
{
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String name = new String(in.readLine());
if(!name.equals("#"))
{
jTextArea.append(name+'\n');
jTextArea.repaint();
}
else
{
PrintWriter toServer1 = null;
try
{
Socket socket1;
socket1 = new Socket("localhost",1000);
toServer1 = new PrintWriter(socket1.getOutputStream(),true);
toServer1.println("#");
socket.close();
}
catch(IOException ex)
{
System.err.println(ex);
}
toServer1.flush();
break;
}
}
catch(IOException ex)
{
System.out.println(ex);
}
//jbt.addActionListener(this);
}
}
catch(IOException ex)
{
System.out.println(ex.getMessage());
}
}
public void actionPerformed(ActionEvent e)
{
PrintWriter toServer = null;
try
{
Socket socket;
socket = new Socket("localhost",1000);
toServer = new PrintWriter(socket.getOutputStream(),true);
toServer.println(jTextArea1.getText().trim());
jTextArea1.setText("");
this.repaint();
}
catch(IOException ex)
{
System.err.println(ex);
}
toServer.flush();
}
/*class RegistrationThread extends Thread
{
private Socket socket;
private BufferedReader in;
public RegistrationThread(Socket socket)
{
this.socket = socket;
try
{
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
public void run()
{
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -