📄 unclient.java
字号:
/**
*
*/
package com.tiankong;
/**
* @author Administrator
*
*/
import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class UnClient extends JFrame implements ActionListener{
private JTextField enter;
private JTextArea display;
private DatagramPacket sendPacket,receivePacket;
private DatagramSocket socket;
public UnClient(){
super("UnClient");
enter=new JTextField("Type message here");
enter.addActionListener(this);
getContentPane().add(enter,BorderLayout.NORTH);
display=new JTextArea();
getContentPane().add(new JScrollPane(display),BorderLayout.CENTER);
setSize(400,300);
setVisible(true);
try{
socket=new DatagramSocket();
}catch(SocketException se){
se.printStackTrace();
System.exit(1);
}
}
public void waitForPackets(){
while(true){
try{
byte data[]=new byte[100];
receivePacket=new DatagramPacket(data,data.length);
socket.receive(receivePacket);
display.append("\nPacket received:"+"\nFrom host: "+
receivePacket.getAddress()+
"\nHost port: "+receivePacket.getPort()+
"\nLength: "+receivePacket.getLength()+
"\nContaining: \n\t"
+new String(receivePacket.getData(),0,receivePacket.getLength()));
display.setCaretPosition(display.getText().length());
}catch(IOException exception){
display.append(exception.toString()+"\n");
exception.printStackTrace();
}
}
}
public void actionPerformed(ActionEvent e){
try{
display.append("\nSending packet containing: "+e.getActionCommand()+"\n");
String s=e.getActionCommand();
byte data[]=s.getBytes();
sendPacket=new DatagramPacket(data,data.length,InetAddress.getLocalHost(),5000);
socket.send(sendPacket);
display.append("Packet send\n");
display.setCaretPosition(display.getText().length());
}catch(IOException exception){
display.append(exception.toString()+"\n");
exception.printStackTrace();
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
UnClient app=new UnClient();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.waitForPackets();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -