亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pro2panel.java

?? total是最后的版本。包括的全是最新的物理層和數據鏈路層。另外還有pro1和pro2的打包程序和調用它們形成的各自的界面程序
?? JAVA
字號:
/*Pro2Panel.java privide a Panel cheng to simulate quan Protocol 2 .
*/
package chq;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import chq.Pro2;
import chq.frame;
import chq.DatalinkLayer;

public class Pro2Panel extends JPanel implements ActionListener{ 
   	//private Container c;
   	private GridBagLayout gridbaglayout_s,gridbaglayout_r;
   	private GridBagConstraints constraints_s,constraints_r; 
   	
   	private JPanel port,sRPanel,senderPanel,Pfn,framingPanel,Ftp,slog,
   		receiverPanel,Ffp,unframingPanel,Ptn,rlog;
   	
   	private JLabel addressLabel,portLabel,frametypelab;
   	private JLabel sPfnLabel,FrameChangelab,Ftplab,
   		rFfpLabel,unFrameChangelab,rPtnlab;
   
   	private JTextField addressField,portField,sPfnField,sKFieldStr,
   		sSFieldStr,sAFieldStr,sIFieldStr,sKFieldBits,sSFieldBits,
   		sAFieldBits,sIFieldBits,sFtpField;
   	private JTextField rFfpField,rKFieldStr,rSFieldStr,rAFieldStr,
   		rIFieldStr,rKFieldBits,rSFieldBits,rAFieldBits,rIFieldBits,
   		rPtnField;
		
	private JTextArea slogArea,rlogArea;
	
	public Pro2 p2;
	public frame fr,fs,ack;
		
	// set up GUI
	public Pro2Panel()
	{
      	this.setLayout(new BorderLayout());
				
		//JPanel port,
		port=new JPanel();
		     	      	
      	addressLabel=new JLabel("Loacl Address:");
      	port.add(addressLabel);
      	addressField=new JTextField(20);
      	addressField.setEditable(false);
      	port.add(addressField);
      	
      	port.add(Box.createHorizontalStrut(10));
      	
      	portLabel=new JLabel("Local Socket Port:");
      	port.add(portLabel);
      	portField=new JTextField(3);
      	portField.setEditable(false);
      	port.add(portField);
      	
      	this.add(port,BorderLayout.NORTH);
		
		//sRPanel
		sRPanel = new JPanel();
		sRPanel.setLayout(new GridLayout(1,2));		
		
		//senderPanel 
		senderPanel = new JPanel();
		senderPanel.setLayout(new BoxLayout(senderPanel,BoxLayout.Y_AXIS));
      	
      	//JPanel Pfn
      	Pfn=new JPanel();
      	sPfnLabel=new JLabel("Data from Network :");
      	Pfn.add(sPfnLabel);
      	
      	sPfnField=new JTextField("input data for translating",13);
      	sPfnField.addActionListener(this);
      	Pfn.add(sPfnField);
      	
      	senderPanel.add(Pfn);
      	
      	//framingPanel with title
      	framingPanel = new JPanel();
      
      	gridbaglayout_s = new GridBagLayout();
      	framingPanel.setLayout(gridbaglayout_s);   

      	//instantiate gridbag constraints
     	constraints_s = new GridBagConstraints();
     	constraints_s.fill = GridBagConstraints.BOTH;
      	      	
      	//framing String
      	frametypelab=new JLabel("kind      seq       ack       infomation   ");
      	addComponent_f(frametypelab,0,0,4,1);
      	
      	sKFieldStr=new JTextField(4); //addComponent(x,y,with,height)
      	sKFieldStr.setEditable(false);      	
      	addComponent_f( sKFieldStr,0,1,1,1);
      	
      	sSFieldStr=new JTextField(4);
      	sSFieldStr.setEditable(false);      	
      	addComponent_f( sSFieldStr,1,1,1,1);
      	
      	sAFieldStr=new JTextField(4);
      	sAFieldStr.setEditable(false);      	
      	addComponent_f( sAFieldStr,2,1,1,1);
      	
      	sIFieldStr=new JTextField(12);
      	sIFieldStr.setEditable(false);      	
      	addComponent_f( sIFieldStr,3,1,1,1);
      	
      	//framing bits
      	FrameChangelab=new JLabel("change frame from Stirng to bits");
      	addComponent_f( FrameChangelab,0,2,4,1);
      	
      	sKFieldBits=new JTextField(4);
      	sKFieldBits.setEditable(false);      	
      	addComponent_f( sKFieldBits,0,3,1,1);
      	
      	sSFieldBits=new JTextField(4);
      	sSFieldBits.setEditable(false);      	
      	addComponent_f( sSFieldBits,1,3,1,1);
      	
      	sAFieldBits=new JTextField(4);
      	sAFieldBits.setEditable(false);      	
      	addComponent_f( sAFieldBits,2,3,1,1);
      	
      	sIFieldBits=new JTextField(12);
      	sIFieldBits.setEditable(false);      	
      	addComponent_f( sIFieldBits,3,3,1,1);
      	
      	Border loweredetched_s=BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
      	TitledBorder titleborder_s=BorderFactory.createTitledBorder(loweredetched_s,"framing");
      	framingPanel.setBorder(titleborder_s);
      	
      	senderPanel.add(framingPanel);
      	//end of framingPanel
      	
      	//JPanel Ftp
		Ftp=new JPanel();
		
		FlowLayout flowlayout_s=new FlowLayout();
		Ftp.setLayout(flowlayout_s);
		
      	Ftplab=new JLabel("Frame handed down to the PhysicalLayer: ",SwingConstants.LEFT);
      	Ftp.add(Ftplab);
      	Ftp.add(Box.createHorizontalStrut(100));
      	
      	sFtpField=new JTextField(24);
      	sFtpField.setEditable(false);
      	Ftp.add(sFtpField);
      	Ftp.add(Box.createRigidArea(new Dimension(400,50)));
      	
      	senderPanel.add(Ftp);  //end of JPanel Ftp
      	
      	//JPanel slog
      	slog=new JPanel();
      	
      	String s="Log: Protocol 2:Sender\n";
      	slogArea=new JTextArea(s,4,26);
      	slog.add(new JScrollPane(slogArea));
      	
      	Border loweredetched2_s=BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
      	TitledBorder titleborder2_s=BorderFactory.createTitledBorder(loweredetched2_s,"log");
      	slog.setBorder(titleborder2_s);// Border of log_s
      	
      	senderPanel.add(slog);
      	//End of JPanel log
      	
      	Border raisedetched=BorderFactory.createEtchedBorder(EtchedBorder.RAISED);
      	TitledBorder titleborder3_s=BorderFactory.createTitledBorder(raisedetched,"Sender");
      	senderPanel.setBorder(titleborder3_s);//Border of senderPanel
      	      	      	
      	sRPanel.add(senderPanel); //append senderPanel to c
       	//End of SenderPanel
       	
       	
       	
       	//ReceiverPanel
       	receiverPanel = new JPanel();
		receiverPanel.setLayout(new BoxLayout(receiverPanel,BoxLayout.Y_AXIS));
      	
      	//JPanel Ffp
      	Ffp=new JPanel();
      	rFfpLabel=new JLabel("Frame received from Physical-Layer :");
      	Ffp.add(rFfpLabel);
      	Ffp.add(Box.createHorizontalStrut(130));
      	
      	rFfpField=new JTextField(20);
      	rFfpField.setEditable(false);
      	Ffp.add(rFfpField);
      	Ffp.add(Box.createRigidArea(new Dimension(400,50)));
      	
      	receiverPanel.add(Ffp);
      	
      	//unframingPanel with title
      	unframingPanel = new JPanel();
      
      	gridbaglayout_r = new GridBagLayout();
      	unframingPanel.setLayout(gridbaglayout_r);   

      	//instantiate gridbag constraints
     	constraints_r = new GridBagConstraints();
     	constraints_r.fill = GridBagConstraints.BOTH;
      	      	
      	//unframing String
      	frametypelab=new JLabel("kind      seq       ack       infomation   ");
      	addComponent_uf( frametypelab,0,0,4,1);
      	
      	rKFieldBits=new JTextField(4);
      	rKFieldBits.setEditable(false);      	
      	addComponent_uf( rKFieldBits,0,1,1,1);
      	
      	rSFieldBits=new JTextField(4);
      	rSFieldBits.setEditable(false);      	
      	addComponent_uf( rSFieldBits,1,1,1,1);
      	
      	rAFieldBits=new JTextField(4);
      	rAFieldBits.setEditable(false);      	
      	addComponent_uf( rAFieldBits,2,1,1,1);
      	
      	rIFieldBits=new JTextField(12);
      	rIFieldBits.setEditable(false);      	
      	addComponent_uf( rIFieldBits,3,1,1,1);
      	
      	//unframing bits
      	unFrameChangelab=new JLabel("change frame content from bits to String");
      	addComponent_uf( unFrameChangelab,0,2,4,1);
      	
      	rKFieldStr=new JTextField(4);
      	rKFieldStr.setEditable(false);      	
      	addComponent_uf( rKFieldStr,0,3,1,1);
      	
      	rSFieldStr=new JTextField(4);
      	rSFieldStr.setEditable(false);      	
      	addComponent_uf( rSFieldStr,1,3,1,1);
      	
      	rAFieldStr=new JTextField(4);
      	rAFieldStr.setEditable(false);      	
      	addComponent_uf( rAFieldStr,2,3,1,1);
      	
      	rIFieldStr=new JTextField(12);
      	rIFieldStr.setEditable(false);      	
      	addComponent_uf( rIFieldStr,3,3,1,1);
      	
      	Border loweredetched_r=BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
      	TitledBorder titleborder_r=BorderFactory.createTitledBorder(loweredetched_r,"unframing");
      	unframingPanel.setBorder(titleborder_r);
      	
      	receiverPanel.add(unframingPanel);
      	//end of unframingPanel
      	
      	//JPanel Ptn
		Ptn=new JPanel();
		
		FlowLayout flowlayout_r=new FlowLayout();
		Ptn.setLayout(flowlayout_r);
		
      	rPtnlab=new JLabel("Packet to the NetworkLayer:",SwingConstants.LEFT);
      	Ptn.add(rPtnlab);
      	//Ptn.add(Box.createHorizontalStrut(110));
      	      	
      	rPtnField=new JTextField(13);
      	rPtnField.setEditable(false);
      	Ptn.add(rPtnField);
      	//Ptn.add(Box.createRigidArea(new Dimension(400,50)));
      	      	
      	receiverPanel.add(Ptn);  //end of JPanel Ftp
      	
      	//JPanel log
      	rlog=new JPanel();
      	
      	String rlogstring="Log: Protocol 2:Receiver\n";
      	rlogArea=new JTextArea(rlogstring,4,26);
      	rlog.add(new JScrollPane(rlogArea));
      	
      	Border loweredetched2_r=BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
      	TitledBorder titleborder2_r=BorderFactory.createTitledBorder(loweredetched2_r,"log");
      	rlog.setBorder(titleborder2_r);
      	
      	receiverPanel.add(rlog);  //End of JPanel log
      	
      	TitledBorder titleborder3_r=BorderFactory.createTitledBorder(raisedetched,"Receiver");
      	receiverPanel.setBorder(titleborder3_r);//Border of senderPanel
      	
       	sRPanel.add(receiverPanel);//append receiverPanel to Container
       	//End of receiverPanel
       	
       	
       	this.add(sRPanel,BorderLayout.CENTER);
      	      	
      	p2=new Pro2();
      	addressField.setText(p2.datalink.phy.getLocalAddress());
      	portField.setText(Integer.toString(p2.datalink.phy.getLocalPort()));
      	
      	//waitForEvent();
      	
	} // end constructor SenderPanel
	
   // method to set constraints on. addComponent(x,y,with,height)
   	private void addComponent_f( Component component,int column, 
   			int row,int width, int height )
   	{
      // set gridx and gridy 
      	constraints_s.gridx = column;
      	constraints_s.gridy = row;

      	// set gridwidth and gridheight
      	constraints_s.gridwidth = width;   
      	constraints_s.gridheight = height;

      	// set constraints and add component
      	gridbaglayout_s.setConstraints( component, constraints_s );  
      	framingPanel.add( component );      
   	}

	private void addComponent_uf( Component component,
      			int column, int row, int width, int height )
   	{
      // set gridx and gridy 
      	constraints_r.gridx = column;
      	constraints_r.gridy = row;

      	// set gridwidth and gridheight
      	constraints_r.gridwidth = width;   
      	constraints_r.gridheight = height;

      	// set constraints and add component
      	gridbaglayout_r.setConstraints( component, constraints_r );  
      	unframingPanel.add( component );      
   	}
   	
   	public void setReceiving(frame f){
			rFfpField.setText(f.getReceivedFrame());
   			
   			rKFieldBits.setText(f.kindbits);
   			rSFieldBits.setText(f.seqbits);
   			rAFieldBits.setText(f.ackbits);
   			rIFieldBits.setText(f.infobits);
   			
   			rKFieldStr.setText(f.kind);
   			rSFieldStr.setText(Integer.toString(f.seq));
   			rAFieldStr.setText(Integer.toString(f.ack));
   			rIFieldStr.setText(f.info);
			rPtnField.setText(f.info);
   	}
	
	public void waitForEvent(){
		while(true){
			fr=new frame();
			ack=new frame();
			
			fr=p2.receiving();
			setReceiving(fr);
			
			if(fr.kind=="ack"){
 				sPfnField.setEditable(true);
 				rlogArea.append("Ack arrival!:\nWaiting for new packet from networklayer\n\n");
 				rlogArea.setCaretPosition(rlogArea.getText().length());
 			}
			if(fr.kind=="data"){
				rlogArea.append("Data Frame arrival!\nShowFramebits_r:\n"
					+fr.showFramebits()+"\nShowFrameString_r:\n"+
					fr.showFrameString()+"\n");
					
				ack=p2.returnAck();
				rlogArea.append("FormAckFrame:"+ack.getFormedFrame()
					+"\nReturn ack frame to Sender......\n\n");
				rlogArea.setCaretPosition(rlogArea.getText().length());
			}
		}// end of while
	}//end of waitForEvent()  	

	public void actionPerformed(ActionEvent e)
   	{
   		//String s="";
   		if(e.getSource()==sPfnField)
   			{String s=e.getActionCommand();
   			
   			String aimaddress=
				JOptionPane.showInputDialog("Enter Aim IP address","192.168.1.125");	
      		int aimport=
    			Integer.parseInt(JOptionPane.showInputDialog("Enter Aim socketnum"));	
    
        	fs=new frame();
        	fs=p2.sending(aimaddress,aimport,s);  //call for sender1 function
    		
    		sPfnField.setEditable(false);
    		
    		sKFieldStr.setText(fs.kind);
    		sSFieldStr.setText(Integer.toString(fs.seq));
    		sAFieldStr.setText(Integer.toString(fs.ack));
    		sIFieldStr.setText(fs.info);
    		
    		sKFieldBits.setText(fs.kindbits);
    		sSFieldBits.setText(fs.seqbits);
    		sAFieldBits.setText(fs.ackbits);
			sIFieldBits.setText(fs.infobits);
			
			sFtpField.setText(fs.getFormedFrame());
    		
    		slogArea.append("Packet from NetworkLayer containing: "
    				+s+"\nshowFramebits:\n"+fs.showFramebits()+
    				"\nData handed down to Physical_Layer is:\n"+
    				fs.getFormedFrame()+"\nSending......\n");
    		slogArea.setCaretPosition(slogArea.getText().length());
			} //end of if
   	}
   	
} // end class Pro2Panel

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本大道综合伊人精品热热| 亚洲欧美怡红院| 久久99久久99| 一区二区三区精品视频| 国产女主播视频一区二区| 欧美日本在线视频| 国产九色sp调教91| 久久99久久99精品免视看婷婷 | 日本一区二区三区高清不卡| 欧美疯狂做受xxxx富婆| 91视频免费播放| 国产精品18久久久久久久久久久久 | 亚洲国产精品久久久久秋霞影院 | 精品制服美女丁香| 91丨九色丨黑人外教| 蜜桃视频在线一区| 久久精品99国产国产精| 国产日韩成人精品| 美国十次综合导航| 欧美日韩在线播放| 欧美极品另类videosde| 亚洲综合无码一区二区| 国产精品久久影院| 成人精品在线视频观看| 久久精品一区八戒影视| 久久国产福利国产秒拍| 日韩久久久久久| 国产在线精品视频| 国产精品欧美极品| 91玉足脚交白嫩脚丫在线播放| 26uuu成人网一区二区三区| 国产一区啦啦啦在线观看| 精品国产免费一区二区三区香蕉| 狠狠色丁香婷婷综合| 国产欧美日韩精品一区| 国产福利不卡视频| 在线免费不卡视频| 精品美女在线播放| 亚洲制服丝袜在线| 成人免费av网站| 色av成人天堂桃色av| 日韩国产高清影视| 日韩欧美在线123| 日韩一区二区在线看| 欧美狂野另类xxxxoooo| 日韩三级伦理片妻子的秘密按摩| 精品福利一区二区三区| 亚洲国产精品成人久久综合一区| 国产精品美女久久久久久久久久久 | 欧美精品xxxxbbbb| 精品日产卡一卡二卡麻豆| 日本一区二区成人| 亚洲二区视频在线| 看片的网站亚洲| 韩国精品主播一区二区在线观看| 成人av网址在线| 91精品国产综合久久久久久漫画| 国产精品久久福利| 国产精品小仙女| 精品裸体舞一区二区三区| 亚洲成人免费视频| 91麻豆国产福利在线观看| 国产午夜精品久久久久久久| 日本在线不卡一区| 欧美男同性恋视频网站| 亚洲综合图片区| 99精品偷自拍| 日本一区二区三区国色天香 | 久久日一线二线三线suv| 亚欧色一区w666天堂| 色婷婷激情综合| 亚洲人成网站精品片在线观看| 高清不卡在线观看| 国产日韩av一区二区| 国产伦精品一区二区三区在线观看| 91精品国产综合久久久久久久| 亚洲一区中文在线| 色综合亚洲欧洲| 亚洲精品视频在线观看网站| 91视频91自| 亚洲欧美日韩国产成人精品影院| 成人h版在线观看| 1区2区3区精品视频| 色一区在线观看| 亚洲一区二区三区四区五区中文| 色婷婷av一区二区| 亚洲一级片在线观看| 欧美高清激情brazzers| 美女视频黄频大全不卡视频在线播放| 欧美一区二区三区视频在线观看| 蜜臀av一区二区在线免费观看| 日韩三级视频在线看| 国产成人免费视频网站高清观看视频| 国产日韩高清在线| 色婷婷亚洲一区二区三区| 亚洲午夜久久久久久久久电影院| 91精品久久久久久久99蜜桃| 久久99久久精品| 国产精品久久久久久久久久久免费看| av中文字幕不卡| 日韩精品视频网站| 国产日韩欧美不卡| 欧美三区在线观看| 国产一区二区三区免费观看| 国产精品午夜在线| 欧美精品久久久久久久久老牛影院| 美女尤物国产一区| 综合激情成人伊人| 欧美一二三区在线| 成人丝袜视频网| 亚洲成精国产精品女| 久久综合久久综合久久| 日本道色综合久久| 久久99国产精品麻豆| 国产精品第四页| 日韩欧美在线1卡| 91在线观看视频| 精品午夜一区二区三区在线观看| 亚洲同性同志一二三专区| 日韩免费一区二区| 一本到一区二区三区| 韩国女主播成人在线观看| 亚洲国产视频网站| 国产精品成人免费在线| 日韩一区二区在线免费观看| 91丨porny丨户外露出| 精品一区二区三区免费观看| 一卡二卡三卡日韩欧美| 国产精品久久夜| 亚洲精品一区在线观看| 欧美丰满美乳xxx高潮www| av不卡在线播放| 国产主播一区二区三区| 日韩主播视频在线| 亚洲成人黄色影院| 亚洲精品国产第一综合99久久| 精品国产乱码久久| 欧美一区二区三区不卡| 精品视频1区2区3区| 99视频国产精品| 成人黄色国产精品网站大全在线免费观看 | 成人激情开心网| 精品中文字幕一区二区| 亚洲aⅴ怡春院| 亚洲国产一区二区三区青草影视| 国产精品第四页| 欧美激情一区二区三区全黄| 日韩精品一区国产麻豆| 欧美性色欧美a在线播放| 不卡一区二区在线| 懂色av噜噜一区二区三区av| 韩国欧美国产1区| 久久狠狠亚洲综合| 久久成人麻豆午夜电影| 日本视频免费一区| 日韩中文字幕不卡| 日本不卡的三区四区五区| 性做久久久久久| 日韩不卡手机在线v区| 日日摸夜夜添夜夜添国产精品| 日韩二区三区四区| 精品在线免费视频| 精品一区二区三区av| 国产精品1区二区.| 成人ar影院免费观看视频| a亚洲天堂av| 在线观看不卡一区| 欧美区一区二区三区| 欧美另类z0zxhd电影| 欧美本精品男人aⅴ天堂| 久久综合九色综合97_久久久| 久久婷婷久久一区二区三区| 国产精品久久久久一区 | 亚洲成av人片一区二区三区| 日韩一区欧美二区| 国产很黄免费观看久久| 99久久婷婷国产综合精品| 欧美亚洲国产一区二区三区| 6080亚洲精品一区二区| 国产日韩欧美精品在线| 亚洲激情中文1区| 蜜臀av一区二区三区| 风间由美一区二区av101| 在线亚洲+欧美+日本专区| 日韩欧美中文一区二区| 国产精品女人毛片| 五月婷婷色综合| 成人黄色av电影| 91麻豆精品国产91久久久| 久久久国产精品麻豆| 亚洲精选一二三| 精品制服美女久久| 欧美性欧美巨大黑白大战| 久久色在线视频| 亚洲国产欧美在线人成| 成人福利视频网站| 日韩三级电影网址| 一区二区三区四区在线免费观看| 老司机免费视频一区二区| 在线免费av一区|