예제 #1
0
 private void updateProjectPath() {
   if (myProjectPath.getPath() == null
       || myProjectPath.getPath().length() == 0
       || myProjectPath.getPath().startsWith(PROJECTS_DIR)) {
     myProjectPath.setPath(PROJECTS_DIR + File.separator + myProjectName.getText());
   }
 }
  public TrafficModeling() {
    this.setLayout(null);

    // 第一栏,流量文件/路径选择
    JLabel lbl1 = new JLabel("流量文件/路径");
    lbl1.setBounds(220, 50, 160, 30);
    this.add(lbl1);
    pathTraffic = new PathField(true, true, new ExtensionFileFilter("pcap流量文件", "pcap"));
    pathTraffic.setPath(Setting.getWorkspacePath() + "traffics");
    pathTraffic.setBounds(400, 50, 450, 30);
    this.add(pathTraffic);

    // 第二栏,输出路径选择
    JLabel lbl2 = new JLabel("模型输出路径");
    lbl2.setBounds(220, 100, 160, 30);
    this.add(lbl2);
    pathOutput = new PathField(false, true, null);
    pathOutput.setPath(Setting.getWorkspacePath() + "models");
    pathOutput.setBounds(400, 100, 450, 30);
    this.add(pathOutput);

    // 第三栏,建模级别
    JLabel lbl3 = new JLabel("建模级别");
    lbl3.setBounds(220, 150, 100, 30);
    this.add(lbl3);
    this.add(getSessionbutton());
    this.add(getPacketbutton());
    bindButtonGroup();

    // 第四栏,建模精度1
    lblPrecisionSize = new JLabel("Packet长度建模精度");
    lblPrecisionSize.setBounds(220, 200, 150, 30);
    this.add(lblPrecisionSize);

    txtPrecisionSize = new JTextField("10");
    txtPrecisionSize.setBounds(400, 200, 100, 30);
    this.add(txtPrecisionSize);

    lblPrecisionSizeTip = new JLabel("Bytes");
    lblPrecisionSizeTip.setBounds(510, 200, 400, 30);
    this.add(lblPrecisionSizeTip);

    // 第五栏,建模精度2
    lblPrecisionTime = new JLabel("Packet时间间隔建模精度");
    lblPrecisionTime.setBounds(220, 250, 200, 30);
    this.add(lblPrecisionTime);

    txtPrecisionTime = new JTextField("50");
    txtPrecisionTime.setBounds(400, 250, 100, 30);
    this.add(txtPrecisionTime);

    lblPrecisionTimeTip = new JLabel("各数量级上的划分数(1~100值越大精度越高)");
    lblPrecisionTimeTip.setBounds(510, 250, 400, 30);
    this.add(lblPrecisionTimeTip);

    // 开始建模按钮
    this.add(getStartButton());

    // 结果展示部分
    JScrollPane scrollPane = new JScrollPane(getResultsPanel());
    scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);

    //		for (int i=0;i<20;++i)
    //			addResult("C:/123.pcap", "C:/466.model", "C:/46.tmp");

    scrollPane.setBounds(0, 300, 1280 - 100, 500 - 80);
    this.add(scrollPane);
  }