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

📄 udptimeserverframe.java

📁 Java实例入门
💻 JAVA
字号:
package udptimeserver;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;/** * Title:        时钟服务程序 * Description:  这是一个使用用户数据报协议(UDP)实现的简单时钟服务器 * Copyright:    Copyright (c) 2001 * Company: * @author * @version 1.0 */public class UdpTimeServerFrame extends JFrame {  JPanel contentPane;  JLabel statusBar = new JLabel();  BorderLayout borderLayout1 = new BorderLayout();  JPanel jPanelCmd = new JPanel();  JPanel jPanelLog = new JPanel();  BorderLayout borderLayout2 = new BorderLayout();  JScrollPane jScrollPaneLog = new JScrollPane();  TitledBorder titledBorder1;  JLabel jLabel1 = new JLabel();  JTextField txtPort = new JTextField();  JButton command = new JButton();  JLabel jLabel3 = new JLabel();  JLabel jLabel2 = new JLabel();  JTextArea txtLog = new JTextArea();  timeServer server;  /**Construct the frame*/  public UdpTimeServerFrame() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  /**Component initialization*/  private void jbInit() throws Exception  {    //setIconImage(Toolkit.getDefaultToolkit().createImage(UdpTimeServerFrame.class.getResource("[Your Icon]")));    contentPane = (JPanel) this.getContentPane();    titledBorder1 = new TitledBorder(BorderFactory.createEtchedBorder(Color.white,new Color(134, 134, 134)),"日志");    contentPane.setLayout(borderLayout1);    this.setSize(new Dimension(354, 241));    this.setTitle("时钟服务器");    statusBar.setText(" ");    jPanelLog.setLayout(borderLayout2);    jScrollPaneLog.setBorder(titledBorder1);    jLabel1.setText("请输入时钟服务端口号:");    txtPort.setText("13");    txtPort.setColumns(5);    command.setText("Start");    command.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        command_actionPerformed(e);      }    });    jLabel3.setToolTipText("");    jLabel3.setText("  ");    jLabel2.setText("  ");    contentPane.add(statusBar, BorderLayout.SOUTH);    contentPane.add(jPanelCmd, BorderLayout.NORTH);    contentPane.add(jPanelLog, BorderLayout.CENTER);    jPanelLog.add(jScrollPaneLog, BorderLayout.CENTER);    jScrollPaneLog.getViewport().add(txtLog, null);    jPanelLog.add(jLabel3,  BorderLayout.WEST);    jPanelLog.add(jLabel2,  BorderLayout.EAST);    jPanelCmd.add(jLabel1, null);    jPanelCmd.add(txtPort, null);    jPanelCmd.add(command, null);  }  /**Overridden so we can exit when window is closed*/  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      System.exit(0);    }  }  void command_actionPerformed(ActionEvent e) {    if(e.getActionCommand()=="Start" ){       if(server!=null) {           server.stopServer() ;           server=null;        }        server=new timeServer(Integer.parseInt(txtPort.getText().trim()),txtLog);        server.start();        statusBar.setText("服务启动,端口为"+txtPort.getText().trim());        command.setText("Stop");    }else{        if(server!=null) {           server.stopServer() ;           server=null;        }        statusBar.setText("服务终止");        command.setText("Start");    }  }}

⌨️ 快捷键说明

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