📄 sendmessage.java
字号:
import java.io.*;
import java.awt.*;
import java.net.*;
import javax.swing.*;
import java.util.*;
import java.awt.event.*;
public class SendMessage extends JFrame implements ActionListener
{
private JLabel Label1=new JLabel("聊天记录");
private JLabel Label2=new JLabel("发送消息");
private JTextArea upText=new JTextArea();
private JTextArea downText=new JTextArea();
private JButton sendButton=new JButton("发送");
private JButton deleteButton=new JButton("关闭");
private JScrollPane aJScrollPane;
private String itsName;
private String itsIp;
private DatagramPacket sendPacket,receivePacket;
private DatagramSocket sendSocket,receiveSocket;
private int sendPort;
private String myname;
public SendMessage(DatagramSocket a1,DatagramSocket a2,int a3)
{
sendSocket=a1;
receiveSocket=a2;
sendPort=a3;
String title="谈话中";
this.setTitle(title);
this.setBounds(100,100,400,300);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
Container c=this.getContentPane();
c.setLayout(new BorderLayout());
JPanel panel1=new JPanel();
panel1.setLayout(new BorderLayout());
panel1.setBorder(BorderFactory.createLineBorder(Color.black));
upText.setLineWrap(true);
aJScrollPane=new JScrollPane(upText);
panel1.add(Label1,BorderLayout.NORTH);
panel1.add(aJScrollPane,BorderLayout.CENTER);
JPanel panel3=new JPanel();
panel3.setLayout(new BorderLayout());
panel3.setBorder(BorderFactory.createLineBorder(Color.black));
panel3.add(Label2,BorderLayout.NORTH);
panel3.add(downText);
panel1.add(panel3,BorderLayout.SOUTH);
c.add(panel1,BorderLayout.CENTER);
JPanel panel2=new JPanel();
sendButton.addActionListener(this);
panel2.add(sendButton);
deleteButton.addActionListener(this);
panel2.add(deleteButton);
c.add(panel2,BorderLayout.SOUTH);
c.validate();
this.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent event)
{
dispose();
}
}
);
}
public String getUpTextString()
{
return upText.getText();
}
public void setUpTextString(String s1,String s2)
{
upText.append(s2+":"+s1);
upText.append("\n");
}
public String getItsIp()
{
return itsIp;
}
public void setItsIp(String s)
{
itsIp=s;
}
public String getItsName()
{
return itsName;
}
public void setItsName(String s)
{
itsName=s;
}
public String getMyName()
{
return myname;
}
public void setMyName(String s)
{
myname=s;
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==sendButton)
{
try
{
String s1=downText.getText();
String s2=upText.getText();
byte[] data=s1.getBytes();
sendPacket=new DatagramPacket(data,s1.length(),InetAddress.getByName(itsIp),sendPort);
sendSocket.send(sendPacket);
downText.setText(" ");
upText.append(myname+":"+s1);
upText.append("\n");
// this.dispose();
}
catch (UnknownHostException ex1)
{
ex1.printStackTrace();
}
catch (IOException ex2)
{
ex2.printStackTrace();
}
}
if(e.getSource()==deleteButton)
{
this.dispose();
// this.setVisible(false);
}
}
/*
public static void main(String arg[])
{
SendMessage a=new SendMessage();
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -