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

📄 visualping.java.txt

📁 VisualPing.java to ping a website.
💻 TXT
字号:
/* @ author neonmap
* Visual ping
*
*/
import java.net.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class VisualPing extends JFrame {
  private JLabel lblURL=new JLabel("Host");
  private JTextField txfURL=new JTextField();
  private JLabel lblping=new JLabel("data");
  private JTextField txfping=new JTextField("3");
  private JLabel lbltimeout=new JLabel("Time out (ms)");
  private JTextField txftimeout=new JTextField("3000");
  private TextArea txahasil=new TextArea();
  private JButton btnStart=new JButton("PING");
  private JButton btnClear=new JButton("Clear");
  private JButton btnExit=new JButton("Exit");

  public VisualPing() {
    setTitle(".::NEOPING PROGRAM::.");
    setLocation(200,100);
    setSize(280,280);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setResizable(false);
  }

  public void komponenVisual() {
    getContentPane().setLayout(null);
    getContentPane().add(lblURL);
    getContentPane().add(txfURL);
    getContentPane().add(lblping);
    getContentPane().add(txfping);
    getContentPane().add(lbltimeout);
    getContentPane().add(txftimeout);
    getContentPane().add(txahasil);
    getContentPane().add(btnStart);
    getContentPane().add(btnClear);
    getContentPane().add(btnExit);
    lblURL.setBounds(10,10,50,20);
    txfURL.setBounds(60,10,200,20);
    lblping.setBounds(10,30,50,20);
    txfping.setBounds(130,30,30,20);
    lbltimeout.setBounds(10,50,100,20);
    txftimeout.setBounds(110,50,50,20);
    txahasil.setBounds(10,80,250,120);
    btnStart.setBounds(10,205,75,25);
    btnClear.setBounds(95,205,75,25);
    btnExit.setBounds(180,205,75,25);
    setVisible(true);
  }

  public void aksiReaksi() {
    btnStart.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        txahasil.setText("");
        pingClass ping=new pingClass();
        ping.setIP(lblURL.getText());
        ping.setTimeout(Integer.parseInt(txftimeout.getText()));
        for (int i=1;i<=Integer.parseInt(txfping.getText());i++) {
          ping.getPing();
          txahasil.append(ping.getStatus());
        }
        txahasil.append("FINISH executed");
      }
    });

    btnClear.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        txfURL.setText("");
        txfping.setText("3");
        txftimeout.setText("3000");
        txahasil.setText("");
        txfURL.requestFocus(true);
      }
    });

    btnExit.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        System.exit(0);
      }
    });
  }

  public static void main(String args[]) {
    VisualPing Vping=new VisualPing();
    Vping.komponenVisual();
    Vping.aksiReaksi();
  }
}

class pingClass {
  private String IP="";
  private boolean status=false;
  private String st_status="";
  private int timeout=0;

  public void setIP(String IP) {
    this.IP=IP;
  }

  public void setTimeout(int timeout) {
    this.timeout=timeout;
  }

  public boolean getPing() {
    // waktu time out
    try {
      status = InetAddress.getByName(IP).isReachable(timeout);
    } catch (Exception e) {
      st_status = "ERROR : "+e;
    }
    return status;
  }

  public String getStatus() {
    if (status==true) {
      st_status="Received from "+IP+"\n";
    } else {
      st_status="Request time out at "+IP+"\n";
    }
    return st_status;
  }
}

⌨️ 快捷键说明

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