⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frame1.java~18~

📁 JBuilder9 精髓 source code1.rar
💻 JAVA~18~
字号:
package tcpserver;

import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import com.borland.jbcl.layout.*;
import javax.swing.*;

/**
 * <p>Title: no</p>
 * <p>Description: This a Java builder program</p>
 * <p>Copyright: Copyright (c) 2002</p>
 * <p>Company: home</p>
 * @author liujun
 * @version 1.0
 */

public class Frame1 extends JFrame implements Runnable{
  private JPanel contentPane;
  private XYLayout xYLayout1 = new XYLayout();
  private TextArea textArea1 = new TextArea();
  private Label label1 = new Label();
  private TextField textField1 = new TextField();
  private Button button1 = new Button();
  private Button button2 = new Button();
  ServerSocket server = null;
  Socket socket = null;
  BufferedReader in = null;
  PrintWriter out = null;
  InetAddress myServer=null;

  //Construct the frame
  public Frame1() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  //Component initialization
  private void jbInit() throws Exception  {
    //setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));
    contentPane = (JPanel) this.getContentPane();
    textArea1.setText(" ");
    contentPane.setLayout(xYLayout1);
    this.setSize(new Dimension(400, 300));
    this.setTitle("服务器端");

    label1.setText("消息:");
    textField1.setText(" ");
    textField1.addKeyListener(new java.awt.event.KeyAdapter() {
      public void keyPressed(KeyEvent e) {
        textField1_keyPressed(e);
      }
    });
    button1.setEnabled(false);    button1.setLabel("开始发送");
    button1.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(ActionEvent e) {
        button1_actionPerformed(e);
      }
    });
    button2.setLabel("退出");
    button2.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(ActionEvent e) {
        button2_actionPerformed(e);
      }
    });
    contentPane.add(textArea1,  new XYConstraints(5, 7, 389, 190));
    contentPane.add(textField1,  new XYConstraints(93, 209, 258, 26));
    contentPane.add(button1,    new XYConstraints(7, 241, 124, 26));
    contentPane.add(button2,      new XYConstraints(287, 241, 97, 30));
    contentPane.add(label1, new XYConstraints(27, 207, 45, 26));


  }
  //Overridden so we can exit when window is closed
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      //添加代码
      try{
        out.println("server exit!");
        out.flush();
        }catch(Exception ex){}
        finally{
          System.exit(0);
        }
     }
  }


  void button1_actionPerformed(ActionEvent e) {
    out.println(textField1.getText());
    out.flush();
    textArea1.append("server information:"+textField1.getText()+"\n");
    textField1.setText("");
  }

  void button2_actionPerformed(ActionEvent e) {
    try{
    out.println("serverexit!");
    out.flush();
    }catch(Exception e2){}
    finally{
      System.exit(0);
    }

  }

  void textField1_keyPressed(KeyEvent e) {
    int j=e.getKeyCode();
    if(j==e.VK_ENTER){
    out.println(textField1.getText());
       out.flush();
       textArea1.append("server information:"+textField1.getText()+"\n");
       textField1.setText("");
     }
  }
  public void run() {
      try{
        //在端口5438上注册服务
        server = new ServerSocket(5438);
        socket = server.accept();
        in = new BufferedReader (new InputStreamReader(socket.getInputStream()));
        out = new PrintWriter(socket.getOutputStream());
        if (socket!= null){
          textArea1.append("system information:  client have joined!\n");
          button1.setEnabled(true);
        }
        receiver r = new receiver();
        Thread t = new Thread(r);
        t.start();
      }catch(Exception e){
        textArea1.append(e.toString()+"\n");
      }
    }
private class receiver implements Runnable{
    public void run(){
      String s1 = null;
      try{
        s1 = in.readLine();
        while(s1!= "client exit!"){
          textArea1.append("client information:  "+s1+"\n");
          s1 = in.readLine();
        }
        in.close();
        out.close();
        socket.close();
        server.close();
      }catch(Exception e){}
       button1.setEnabled(false);
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -