package whc;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.*;
public class LogOnJFrame {
/*
* 登录界面
*/
public static void main(String[] args) {
JFrame frame = new JFrame();// 创建一个窗口
frame.setTitle("IP包首部校验和计算程序设计");// 设置窗口标题
frame.setBounds(250, 100, 825, 600);// 设置窗口位置和大小
frame.setLayout(null);
JPanel panel = new JPanel();// JPanel:面板组件,非顶层容器
JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
JPanel panel4 = new JPanel();
JPanel panel5 = new JPanel();
JPanel panel6 = new JPanel();
JPanel panel7 = new JPanel();
JPanel panel8 = new JPanel();
JPanel panel9 = new JPanel();
JPanel panel10 = new JPanel();
JPanel panel11 = new JPanel();
JPanel panel12 = new JPanel();
JPanel panel13 = new JPanel();
JPanel panel14 = new JPanel();
JLabel labTitle = new JLabel("IP包首部校验");//设置窗口标题
Font font1 = new Font("宋体", Font.BOLD, 40);//设置字形,字体和字号
labTitle.setFont(font1);
panel1.add(labTitle);
panel1.setBounds(260, 20, 300, 80);//设置窗口位置和大小
frame.add(panel1);
/*
* 设置身份标签
*/
Font font = new Font("宋体", Font.BOLD, 16);
JLabel labCard = new JLabel("协议名 ");// 用标签来表示文本或图片
labCard.setFont(font);// 设置标签字体的大小
panel.add(labCard);// 将lable标签添加到面板上
/*
* 设置下拉框
*/
JComboBox<String> jcb = new JComboBox<String>();
Dimension dim = new Dimension(200, 30);//设置组件的宽和高
jcb.setPreferredSize(dim);
jcb.addItem("ICMP");
jcb.addItem("IGMP");
jcb.addItem("IP");
jcb.addItem("TCP");
jcb.addItem("UDP");
jcb.setFont(font);
panel.add(jcb);
panel.setBounds(50, 100, 300, 50);
frame.add(panel);
JLabel labCard1 = new JLabel("ip版本 ");// 用标签来表示文本或图片
labCard1.setFont(font);// 设置标签字体的大小
panel9.add(labCard1);// 将lable标签添加到面板上
JComboBox<String> jcb1 = new JComboBox<String>();
jcb1.setPreferredSize(dim);
jcb1.addItem("4");
jcb1.addItem("6");
jcb1.setFont(font);
panel9.add(jcb1);
panel9.setBounds(350, 100, 300, 50);
frame.add(panel9);
/*
* /* 创建一个账号标签,并设置字体以及字体大小
*/
JLabel labName = new JLabel(" 本机ip ");// 用标签来表示文本或图片
labName.setFont(font);// 设置标签字体的大小
panel2.add(labName);// 将lable标签添加到面板上
/*
* 创建一个文本框,并设置大小
*/
JTextField textName = new JTextField();
textName.setPreferredSize(dim);
panel2.add(textName);
panel2.setBounds(50, 150, 300, 50);// 设置面板的位置和大小
frame.add(panel2);// 添加面板到窗口中
/*
* 创建一个密码标签
*/
JLabel labPass = new JLabel("目标ip ");
labPass.setFont(font);
panel3.add(labPass);
/*
* 设置密码文本框
*/
JTextField textPass = new JTextField();
textPass.setPreferredSize(dim);
String s = textPass.getText();
// System.out.println(s);
panel3.add(textPass);
panel3.setBounds(50, 200, 300, 50);
frame.add(panel3);
JLabel labbanben = new JLabel("首部长度 ");
labbanben.setFont(font);
panel6.add(labbanben);
/*
* 设置密码文本框
*/
JTextField textbanben = new JTextField();
textbanben.setPreferredSize(dim);
panel6.add(textbanben);
panel6.setBounds(50, 250, 300, 50);
frame.add(panel6);
JLabel lab1 = new JLabel("服务类型 ");
lab1.setFont(font);
panel7.add(lab1);
/*
* 设置密码文本框
*/
JTextField text1 = new JTextField();
text1.setPreferredSize(dim);
panel7.add(text1);
panel7.setBounds(50, 300, 300, 50);
frame.add(panel7);
JLabel lab2 = new JLabel("总长度 ");
lab2.setFont(font);
panel8.add(lab2);
JTextField text2 = new JTextField();
text2.setPreferredSize(dim);
panel8.add(text2);
panel8.setBounds(50, 350, 300, 50);
frame.add(panel8);
JLabel lab3 = new JLabel("标识 ");
lab3.setFont(font);
panel10.add(lab3);
JTextField text3 = new JTextField();
text3.setPreferredSize(dim);
panel10.add(text3);
panel10.setBounds(350, 250, 300, 50);
frame.add(panel10);
JLabel lab4 = new JLabel("标值 ");
lab4.setFont(font);
panel11.add(lab4);
JTextField text4 = new JTextField();
text4.setPreferredSize(dim);
panel11.add(text4);
panel11.setBounds(350, 200, 300, 50);
frame.add(panel11);
JLabel lab5 = new JLabel("片偏移 ");
lab5.setFont(font);
panel12.add(lab5);
JTextField text5 = new JTextField();
text5.setPreferredSize(dim);
panel12.add(text5);
panel12.setBounds(350, 150, 300, 50);
frame.add(panel12);
JLabel lab6 = new JLabel("生存时间 ");
lab6.setFont(font);
panel13.add(lab6);
JTextField text6 = new JTextField();
text6.setPreferredSize(dim);
panel13.add(text6);
panel13.setBounds(350, 300, 300, 50);
frame.add(panel13);
//
// JLabel lab7 = new JLabel("首部校准和 ");
// lab7.setFont(font);
// panel14.add(lab7);
//
// JTextField text7 = new JTextField();
// text7.setPreferredSize(dim);
// panel14.add(text7);
// panel14.setBounds(350, 350, 300, 50);
// frame.add(panel14);
/*
* 设置密码文本框
*/
/*
* 设置一个按钮
*/
Dimension dim1 = new Dimension(180, 30);
JButton jb1 = new JButton("验证ip是否正确");
JButton jb2 = new JButton("IP包首部校验");
jb1.setFont(font);
jb2.setFont(font);
jb1.setPreferredSize(dim1);
jb2.setPreferredSize(dim1);
panel4.add(jb1);
panel5.add(jb2);
panel4.setBounds(225, 450, 180, 50);
panel5.setBounds(545, 450, 180, 50);
frame.add(panel4);
frame.add(panel5);
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String s = textPass.getText();
String a = textName.getText();
System.out.println(iptrue.isIpValid(s)&iptrue.isIpValid(a));
if(!(iptrue.isIpValid(s)&iptrue.isIpValid(a))) {
JOptionPane.showMessageDialog(null, "主机ip与目标ip不正确");
}else {
JOptionPane.showMessageDialog(null, "主机ip与目标ip正确");
}
}
});
jb2.addActionListener(new ActionListener() {
public void actionPer
- 1
- 2
- 3
前往页