package gui;
import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.SwingConstants;
import java.awt.Point;
import javax.swing.JTextArea;
import java.net.*;
import java.awt.Color;
import javax.swing.BorderFactory;
import javax.swing.border.BevelBorder;
import javax.swing.border.TitledBorder;
import javax.swing.border.SoftBevelBorder;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class GUI extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JLabel IP = null;
private JTextArea jTextIP = null;
private JLabel port = null;
private JTextField jTextport = null;
private JLabel Root = null;
private JTextField jTextRoot = null;
private JButton scan = null;
private JScrollPane jScrollPane = null;
private JTable jTable = null;
private JButton start = null;
private JButton stop = null;
private WebServer server = null;
private DefaultTableModel defaultModel = null;
private JButton jButton = null;
private JButton jButton1 = null;
/**
* This is the default constructor
*/
public GUI() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(657, 374);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
Root = new JLabel();
Root.setHorizontalAlignment(SwingConstants.CENTER);
Root.setLocation(new Point(285, 2));
Root.setSize(new Dimension(75, 30));
Root.setText("主目录");
port = new JLabel();
port.setPreferredSize(new Dimension(40, 20));
port.setHorizontalAlignment(SwingConstants.CENTER);
port.setLocation(new Point(180, 2));
port.setSize(new Dimension(45, 30));
port.setText("端口");
IP = new JLabel();
IP.setHorizontalAlignment(SwingConstants.CENTER);
IP.setLocation(new Point(5, 2));
IP.setSize(new Dimension(55, 30));
IP.setText("本机IP");
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.setBorder(new SoftBevelBorder(SoftBevelBorder.RAISED));
jContentPane.add(IP, null);
jContentPane.add(getJTextIP(), null);
jContentPane.add(port, null);
jContentPane.add(getJTextport(), null);
jContentPane.add(Root, null);
jContentPane.add(getJTextRoot(), null);
jContentPane.add(getScan(), null);
jContentPane.add(getJScrollPane(), null);
jContentPane.add(getStart(), null);
jContentPane.add(getStop(), null);
jContentPane.add(getJButton(), null);
jContentPane.add(getJButton1(), null);
}
return jContentPane;
}
/**
* This method initializes jTextIP
*
* @return javax.swing.JTextArea
*/
private JTextArea getJTextIP() {
if (jTextIP == null) {
jTextIP = new JTextArea();
jTextIP.setLocation(new Point(60, 2));
jTextIP.setBackground(Color.white);
jTextIP.setEditable(false);
jTextIP.setSize(new Dimension(105, 30));
InetAddress ia = null;
try {
ia = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
e.printStackTrace();
}
jTextIP.append(ia.getHostAddress());
}
return jTextIP;
}
/**
* This method initializes jTextport
*
* @return javax.swing.JTextField
*/
private JTextField getJTextport() {
if (jTextport == null) {
jTextport = new JTextField();
jTextport.setLocation(new Point(225, 2));
jTextport.setSize(new Dimension(45, 30));
}
return jTextport;
}
/**
* This method initializes jTextRoot
*
* @return javax.swing.JTextField
*/
private JTextField getJTextRoot() {
if (jTextRoot == null) {
jTextRoot = new JTextField();
jTextRoot.setLocation(new Point(360, 2));
jTextRoot.setSize(new Dimension(210, 30));
}
return jTextRoot;
}
/**
* This method initializes scan
*
* @return javax.swing.JButton
*/
private JButton getScan() {
if (scan == null) {
scan = new JButton();
scan.setBounds(new Rectangle(580, 2, 50, 28));
scan.setText("浏览");
scan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
int ret = fileChooser.showOpenDialog(null);
if(ret == JFileChooser.APPROVE_OPTION)
jTextRoot.setText(fileChooser.getSelectedFile().getPath());
}
});
}
return scan;
}
/**
* This method initializes jScrollPane
*
* @return javax.swing.JScrollPane
*/
private JScrollPane getJScrollPane() {
if (jScrollPane == null) {
jScrollPane = new JScrollPane();
jScrollPane.setBounds(new Rectangle(5, 40, 636, 248));
jScrollPane.setViewportView(getJTable());
}
return jScrollPane;
}
/**
* This method initializes jTable
*
* @return javax.swing.JTable
*/
private JTable getJTable() {
if (jTable == null) {
Object[][] p = {};
String[] n = {"访问时间","客户机IP","请求报文","相应报文"};
DefaultTableModel defaultModel = new DefaultTableModel(p,n);
jTable = new JTable(defaultModel);
jTable.setAutoCreateColumnsFromModel(true);
jTable.setAutoResizeMode(JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS);
jTable.setShowGrid(true);
//jTable.setModel(new DefaultTableModel());
jTable.setCellSelectionEnabled(true);
}
return jTable;
}
/**
* This method initializes start
*
* @return javax.swing.JButton
*/
private JButton getStart() {
if (start == null) {
start = new JButton();
start.setBounds(new Rectangle(450, 300, 75, 30));
start.setText("开启");
start.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
int port = Integer.parseInt(jTextport.getText());
String root = jTextRoot.getText();
GUI sws = null;
server = new WebServer(port,root,sws);
server.start();
jTextIP.setEnabled(false);
jTextport.setEnabled(false);
jTextRoot.setEnabled(false);
}
});
}
return start;
}
/**
* This method initializes stop
*
* @return javax.swing.JButton
*/
private JButton getStop() {
if (stop == null) {
stop = new JButton();
stop.setLocation(new Point(540, 300));
stop.setText("关闭");
stop.setSize(new Dimension(75, 30));
stop.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
server.stopServer();
}
});
}
return stop;
}
public void addRow(String[] row){
defaultModel.addRow(row);
}
/**
* This method initializes jButton
*
* @return javax.swing.JButton
*/
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setBounds(new Rectangle(10, 300, 112, 30));
jButton.setText("保存日志");
}
return jButton;
}
/**
* This method initializes jButton1
*
* @return javax.swing.JButton
*/
private JButton getJButton1() {
if (jButton1 == null) {
jButton1 = new JButton();
jButton1.setBounds(new Rectangle(135, 300, 106, 30));
jButton1.setText("清空日志");
}
return jButton1;
}
} // @jve:decl-index=0:visual-constraint="10,10"
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
JAVA网络编程学习资料以及源代码Socket套接字网络协议.rar (11个子文件)
JAVA网络编程学习资料以及源代码Socket套接字网络协议
WebServer.java 911B
ServerThread.class 3KB
基础知识—Java的网络功能与编程(1).chm 42KB
WebServer.class 1KB
Socket套接字—Java套接字编程(上1).chm 358KB
相关API—Java Transaction API概述(1).chm 597KB
GUI.class 6KB
网络协议—Java网络编程之传输控制协议(二1).chm 224KB
ServerThread.java 2KB
index.html 247B
GUI.java 8KB
共 11 条
- 1
资源评论
- qq_182238512015-06-12不能用,有太多错误
chenglongwhu
- 粉丝: 18
- 资源: 149
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功