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

📄 fluxstatpane.java

📁 网络代理服务器的设计与实现 实现对网络的管理
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import java.util.Date;

import javax.swing.*;

public class fluxStatPane extends JPanel{
	private JLabel label1;
	private JLabel label2;
	private JLabel label3;
	private JLabel label4;
	private JLabel label5;
	private JLabel label6;
	private JLabel label7;
	private JLabel label8;
	private JLabel label9;
	private JTextField sendText;
	private JTextField acceptText;
	private JTextField acceptrateText;
	private JTextField sendrateText;
	private JButton back;
	private Statistic thread;
	
	public fluxStatPane(){
		this.setLayout(null);
		label1=new JLabel("流量统计");
		//label1.setFont(new Font(""))
		label1.setBounds(new Rectangle(10,20,100,20));
		JSeparator s=new JSeparator(JSeparator.HORIZONTAL);
    	s.setBounds(new Rectangle(0,42,500,3));
    	
		label2=new JLabel("接    收");
		label2.setBounds(new Rectangle(50,70,60,20));
		acceptText=new JTextField(100);
		acceptText.setEditable(false);
		acceptText.setHorizontalAlignment(SwingConstants.RIGHT);
		acceptText.setBounds(new Rectangle(110,70,100,20));
		label5=new JLabel("字节");
		label5.setBounds(new Rectangle(210,70,40,20));
		
		label3=new JLabel("发    送");
		label3.setBounds(new Rectangle(50,95,60,20));
		sendText=new JTextField(100);
		sendText.setEditable(false);
		sendText.setHorizontalAlignment(SwingConstants.RIGHT);
		sendText.setBounds(new Rectangle(110,95,100,20));
		label6=new JLabel("字节");
		label6.setBounds(new Rectangle(210,95,40,20));
		
		label4=new JLabel("接收速率");
		label4.setBounds(new Rectangle(50,120,60,20));
		acceptrateText=new JTextField(100);
		acceptrateText.setEditable(false);
		acceptrateText.setHorizontalAlignment(SwingConstants.RIGHT);
		acceptrateText.setBounds(new Rectangle(110,120,100,20));
		label7=new JLabel("字节/秒");
		label7.setBounds(new Rectangle(210,120,60,20));
		
		label8=new JLabel("发送速率");
		label8.setBounds(new Rectangle(50,145,60,20));
		sendrateText=new JTextField(100);
		sendrateText.setEditable(false);
		sendrateText.setHorizontalAlignment(SwingConstants.RIGHT);
		sendrateText.setBounds(new Rectangle(110,145,100,20));
		label9=new JLabel("字节/秒");
		label9.setBounds(new Rectangle(210,145,60,20));
		
		JSeparator s1=new JSeparator(JSeparator.HORIZONTAL);
    	s1.setBounds(new Rectangle(0,175,500,3));
    	back=new JButton("返回");
    	back.setBounds(new Rectangle(360,180,60,20));
    	
    	this.add(label1);
    	this.add(label2);
    	this.add(label3);
    	this.add(label4);
    	this.add(label5);
    	this.add(label6);
    	this.add(label7);
    	this.add(label8);
    	this.add(label9);
    	this.add(sendText);
    	this.add(acceptText);
    	this.add(acceptrateText);
    	this.add(sendrateText);
    	this.add(back);
    	this.add(s);
    	this.add(s1);
    	
    	back.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				eventFrame.jSplitPane1.remove(eventFrame.jSplitPane1.getRightComponent());
		        if(toolBarPanel.state()){
		        	eventFrame.jSplitPane1.add(eventFrame.welcomePanel1,JSplitPane.RIGHT);
		    	}else{
		    		eventFrame.jSplitPane1.add(eventFrame.disPlay,JSplitPane.RIGHT);
		    	}
			}
		});		
    	
    	thread=new Statistic();
    	thread.start();
	}
	
	private class Statistic extends Thread {
		long old_sendsum;
		long old_acceptsum;
		long new_sendsum;
		long new_acceptsum;
		
		public Statistic(){
			old_sendsum=0;
			old_acceptsum=0;
			new_sendsum=0;
			new_acceptsum=0;
		}
		
		public void run(){
			try{
				while(true){
					old_acceptsum=httpProxy.acceptSum;
					old_sendsum=httpProxy.sendSum;
					acceptText.setText(String.valueOf(old_acceptsum));
					sendText.setText(String.valueOf(old_sendsum));
					
					Thread.sleep(1000);
				
					new_acceptsum=httpProxy.acceptSum;
					new_sendsum=httpProxy.sendSum;
					acceptrateText.setText(String.valueOf(new_acceptsum-old_acceptsum));
					sendrateText.setText(String.valueOf(new_sendsum-old_sendsum));
				}
			}catch(Exception e){}
		}
	}
}

⌨️ 快捷键说明

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