?? serverwindow.java
字號:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerWindow extends JFrame implements ActionListener{
JTextArea textarea;
JPanel panel;
JTextField textField;
JButton bt;
//服務器端套接字
ServerSocket server ;
//客戶端套接字
Socket client;
String t;
String s;
PrintStream out;
BufferedReader in;
int i=1 ;
ServerWindow(String s)throws IOException{
super(s);
Container contentPane = getContentPane();
contentPane.setLayout(new BorderLayout());
textarea = new JTextArea();
textarea.setColumns(50);
textarea.setRows(5);
textarea.setLineWrap(true);
textarea.setEditable(false);
contentPane.add(new JScrollPane(textarea),BorderLayout.CENTER);
panel = new JPanel();
textField = new JTextField(10);
textField.setForeground(Color.blue);
textField.addActionListener(this);
bt = new JButton("發送");
bt.addActionListener(this);
panel.add(textField);
panel.add(bt);
contentPane.add(panel,BorderLayout.SOUTH);
setSize(400,400);
setVisible(true);
server = new ServerSocket(8094);
try{
client=server.accept();
out = new PrintStream(client.getOutputStream());
in = new BufferedReader(new InputStreamReader(client.getInputStream()));
textarea.append("Server ok"+"\n");
String ip=client.getInetAddress().toString();//獲取客戶端的IP地址
out.println("恭喜連接成功!您的IP為:"+ip+"\n");
while(true){
t = in.readLine();
textarea.append(t+"\n");
}
}
catch(Exception e){
System.out.println("ERROR:"+e);
}
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==bt){
s = textField.getText();
textarea.append("服務器說:"+s+"\n");
textField.setText("");
out.println("服務器說:"+s);//將讀取的字符串傳給客戶端
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -