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

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

?? mainwindow.java

?? 飛鴿傳書的Java實現。如果想了解的可以參考下。
?? JAVA
字號:
/*作者:吳拓 Email:setsail_wu@163.com
 */
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.*;
import java.util.Hashtable;
import java.util.Enumeration;
import java.util.StringTokenizer;

import javax.swing.JSplitPane;

public class MainWindow extends Frame implements Runnable{

	/*========== Constant Value ==========*/
	public static final long IPMSG_COMMASK		= 0x000000ffL;
	public static final long IPMSG_OPTMASK		= 0xffffff00L;
	
	public static final long IPMSG_NOOPERATION	= 0x00000000L;
	
	public static final long IPMSG_BR_ENTRY		= 0x00000001L;
	public static final long IPMSG_BR_EXIT		= 0x00000002L;
	public static final long IPMSG_ANSENTRY		= 0x00000003L;
	public static final long IPMSG_BR_ABSENCE	= 0x00000004L;
	
	public static final long IPMSG_BR_ISGETLIST = 0x00000018L;
	public static final long IPMSG_OKGETLIST	= 0x00000015L;
	public static final long IPMSG_GETLIST		= 0x00000016L;
	public static final long IPMSG_ANSLIST		= 0x00000017L;
	
	public static final long IPMSG_SENDMSG		= 0x00000020L;
	public static final long IPMSG_RECVMSG		= 0x00000021L;
	
	public static final long IPMSG_READMSG		= 0x00000030L;
	public static final long IPMSG_DELMSG		= 0x00000031L;
	
	public static final long IPMSG_GETINFO		= 0x00000040L;
	public static final long IPMSG_SENDINFO		= 0x00000041L;
	
	public static final long IPMSG_GETPUBKEY	= 0x00000072L;
	public static final long IPMSG_ANSPUBKEY	= 0x00000073L;
	
	// other opt
	public static final long IPMSG_ABSENCEOPT		= 0x00000100L;
	public static final long IPMSG_SERVEROPT		= 0x00000200L;
	public static final long IPMSG_DIALUPOPT		= 0x00010000L;
	public static final long IPMSG_ENCRYPTOPT		= 0x00400000L;
	public static final long IPMSG_ENCRYPTOPTOLD	= 0x00800000L;
	
	// send opt
	public static final long IPMSG_SENDCHECKOPT = 0x00000100L;
	public static final long IPMSG_SECRETOPT	= 0x00000200L;
	public static final long IPMSG_BROADCASTOPT = 0x00000400L;
	public static final long IPMSG_MULTICASTOPT = 0x00000800L;
	public static final long IPMSG_NOPOPUPOPT	= 0x00001000L;
	public static final long IPMSG_AUTORETOPT	= 0x00002000L;
	public static final long IPMSG_RETRYOPT		= 0x00004000L;
	public static final long IPMSG_PASSWORDOPT	= 0x00008000L;
	public static final long IPMSG_NOLOGOPT		= 0x00020000L;
	public static final long IPMSG_NEWMUTIOPT	= 0x00040000L;

	// encrypt opt
	public static final long IPMSG_RSA_512		= 0x00000001L;
	public static final long IPMSG_RSA_1024		= 0x00000002L;
	public static final long IPMSG_RSA_2048		= 0x00000004L;
	public static final long IPMSG_RC2_40		= 0x00001000L;
	public static final long IPMSG_RC2_128		= 0x00004000L;
	public static final long IPMSG_RC2_256		= 0x00008000L;
	public static final long IPMSG_BLOWFISH_128 = 0x00020000L;
	public static final long IPMSG_BLOWFISH_256 = 0x00040000L;
	
	public static final int	 MAXBUF				= 1024;
	/*========== end ==========*/
	
	
	public List memberlist;
	public Button refresh, send;
	public Label inlineNumberLabel;
	public TextArea editTextArea;
	private DatagramSocket UdpMsgds = null;
	public Thread refreshList = null;
	public Hashtable hashtable = new Hashtable();
	public MessengePack msgpack;
	public UdpMsgRecv udpmsgrecvThread;
	public int inlinenumber = 0;
	public InetAddress hostip;
	public MainWindow() {

		createWindow();		
		//定時接收信息
		try{
			UdpMsgds = new DatagramSocket(null);
			UdpMsgds.bind(new InetSocketAddress(2425));
		}catch(SocketException e){
			System.out.println("bind error" + e);
		}
			udpmsgrecvThread = new UdpMsgRecv(UdpMsgds);
			udpmsgrecvThread.start();	
		
		//定時刷新局域網內用戶列表
		refreshList = new Thread(this);
		refreshList.start();
		
	}
	
	public void createWindow(){
		setTitle("JavaIPM 0.1");
		setLayout(new BorderLayout());
		addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent we) {
				udpmsgrecvThread.broadcast(0x00000002L);//離線廣播。	
				System.exit(0);
			}
		});	
		Panel p1 = new Panel(new BorderLayout());
		memberlist = new List(8, true);
		memberlist.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				//sendAction();
			}
		});
		p1.add("Center", memberlist);
		p1.add("North", new Label("用戶名   主機名   IP地址"));
		Panel p2 = new Panel(new GridLayout(6,0));
		p2.add(new Label());
		p2.add(new Label());
		p2.add(new Label("    在線用戶  "));
		inlineNumberLabel = new Label("           0");
		p2.add(inlineNumberLabel);
		refresh = new Button();
		refresh.setLabel("刷新");
		refresh.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				memberlist.removeAll();
				udpmsgrecvThread.hashtable.clear();
				inlinenumber = 0;
				udpmsgrecvThread.broadcast(0x00000001L);//上線廣播。	
				refreshAction();
			}
		});
		p2.add(refresh);
		//p2.setSize(100,50);
		p1.add("East", p2);

		editTextArea = new TextArea("", 5, 40);
		Panel p3 = new Panel(new GridLayout(0,5));
		p3.add(new Label());
		send = new Button();
		send.setLabel("發送");
		send.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				sendAction();
			}
		});
		p3.add(send);
		Panel Psouth = new Panel (new BorderLayout());
		Psouth.add("Center", editTextArea);
		Psouth.add("South", p3);
		

		JSplitPane split;
		split = new JSplitPane(JSplitPane.VERTICAL_SPLIT, p1, Psouth);
		add(split,BorderLayout.CENTER);
		

		setLocation(200, 200);
		setSize(350, 300);

		setIconImage(getToolkit().getImage(
			getClass().getResource("images/ipmsg.gif")));
		
	}
	
	public void sendAction() {
		String slectmember[] = memberlist.getSelectedItems();
		String ipString;
		System.out.println(slectmember.length);
		
		for( int i = 0; i < slectmember.length; i++){
			StringTokenizer tokenizer = new StringTokenizer(slectmember[i], "/", false);
			tokenizer.nextToken();
			ipString = tokenizer.nextToken();
			try{
				hostip = hostip.getByName(ipString);
			}catch(Exception e){
				System.out.println("MainWindows.java:sendAction:error:" + e );
			}
			udpmsgrecvThread.mysend(IPMSG_SENDMSG, editTextArea.getText(), hostip);
		}

	}
	
	public void refreshAction() {
		memberlist.removeAll();
		hashtable = udpmsgrecvThread.gethashtable();	
		inlineNumberLabel.setText("        " + hashtable.size());
		for (Enumeration e = hashtable.elements() ; e.hasMoreElements() ;) {
			msgpack = (MessengePack)e.nextElement();
			memberlist.add(msgpack.getUser() + "    " + msgpack.getHost()
					+ "    " +msgpack.gethostip());
		}
	}
	
	public void run(){		
		hashtable = udpmsgrecvThread.gethashtable();	
		while(true){	
			if(inlinenumber != hashtable.size()){
				this.refreshAction();
				inlinenumber = hashtable.size();
			}
			try{
				refreshList.sleep(1000);	     	
			}catch(InterruptedException e){
				System.out.println("MainWindow.java:refreshList.sleep(500):error:" + e);
			}
		}
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
另类人妖一区二区av| 亚洲人成伊人成综合网小说| 色狠狠色狠狠综合| 91麻豆国产自产在线观看| 99精品偷自拍| 91福利国产精品| 51久久夜色精品国产麻豆| 欧美福利电影网| 日韩女优视频免费观看| 久久综合久久久久88| 久久精品夜色噜噜亚洲a∨| 国产午夜精品一区二区三区四区| 精品电影一区二区| 久久精品人人做人人爽97| 国产精品色哟哟| 亚洲永久精品大片| 蜜桃av一区二区三区电影| 麻豆成人免费电影| 国产成人精品亚洲午夜麻豆| 91污在线观看| 制服丝袜日韩国产| 久久久精品中文字幕麻豆发布| 国产精品日韩成人| 亚洲大片精品永久免费| 极品尤物av久久免费看| 99re成人在线| 欧美一级黄色大片| 亚洲天天做日日做天天谢日日欢 | 亚洲高清一区二区三区| 日韩成人免费电影| 国产成人超碰人人澡人人澡| 91麻豆免费看| 久久久久久久久久看片| 一区二区久久久| 精品在线视频一区| 在线中文字幕不卡| 精品91自产拍在线观看一区| 亚洲欧洲综合另类| 国内精品在线播放| 精品视频在线免费观看| 国产女同性恋一区二区| 亚洲精品一二三区| 国产精品一二三| 制服丝袜日韩国产| 亚洲精品国产品国语在线app| 久草这里只有精品视频| 欧美老女人第四色| 亚洲视频网在线直播| 激情欧美日韩一区二区| 欧美三级日韩三级| 亚洲视频一区二区免费在线观看| 久久99精品久久久久| 欧美日韩国产欧美日美国产精品| 国产精品初高中害羞小美女文| 精品在线观看免费| 日韩一级二级三级| 性做久久久久久| 日本精品视频一区二区| 亚洲国产精品精华液ab| 国产呦萝稀缺另类资源| 日韩欧美中文字幕精品| 五月天视频一区| 91极品美女在线| 亚洲青青青在线视频| 粉嫩一区二区三区在线看| 精品国产123| 久久99国产精品免费| 日韩一区二区三区精品视频| 亚洲18色成人| 欧美日高清视频| 日本不卡一二三区黄网| 欧美一级在线视频| 日产精品久久久久久久性色| 欧美日韩三级视频| 日韩成人av影视| 日韩一区二区三区av| 久久99蜜桃精品| 精品日韩在线观看| 国产毛片精品视频| 欧美国产精品一区二区三区| 懂色av噜噜一区二区三区av| 国产欧美精品国产国产专区| 成人性视频网站| 亚洲丝袜精品丝袜在线| 欧美日韩一区二区三区四区 | 日韩一级片网站| 久久99精品国产麻豆婷婷| 国产亚洲一区二区在线观看| 丁香网亚洲国际| 亚洲欧美国产77777| 欧美日韩电影一区| 精品在线免费视频| 国产精品女同一区二区三区| 日韩一卡二卡三卡四卡| 激情文学综合网| 国产999精品久久| 中文字幕精品三区| 91老师片黄在线观看| 国产成人在线观看| 亚洲人成影院在线观看| 欧美男同性恋视频网站| 国产精品一区二区久久精品爱涩| 国产精品午夜免费| 欧美日韩国产精品成人| 国产一区二区三区日韩| 亚洲欧美日韩人成在线播放| 制服丝袜中文字幕一区| 国产精一区二区三区| 夜夜嗨av一区二区三区网页 | 制服丝袜亚洲精品中文字幕| 国内精品国产成人| 一区二区三区中文字幕精品精品| 日韩色视频在线观看| 色综合天天天天做夜夜夜夜做| 日韩中文字幕不卡| 国产精品久久久久国产精品日日| 在线播放/欧美激情| 成人免费电影视频| 久久精品国产久精国产爱| 亚洲精品一二三| 亚洲国产精品t66y| 日韩免费成人网| 在线观看日韩高清av| 成人免费高清视频在线观看| 美女性感视频久久| 亚洲3atv精品一区二区三区| 中文字幕人成不卡一区| 久久人人爽人人爽| 91精品一区二区三区久久久久久| 91首页免费视频| 国产乱一区二区| 蜜桃视频在线观看一区| 亚洲成人av中文| 亚洲综合区在线| 亚洲三级电影网站| 国产精品网曝门| 国产农村妇女精品| 久久久久久毛片| 26uuu国产一区二区三区| 欧美一级日韩一级| 在线不卡中文字幕| 欧美人伦禁忌dvd放荡欲情| 色久优优欧美色久优优| 99国产精品视频免费观看| 国产精品一级在线| 国产很黄免费观看久久| 精品一区二区三区在线观看国产| 奇米色一区二区三区四区| 五月综合激情网| 日本aⅴ亚洲精品中文乱码| 五月综合激情日本mⅴ| 日韩av一区二区在线影视| 午夜欧美2019年伦理| 天堂一区二区在线免费观看| 亚洲国产成人91porn| 午夜伦欧美伦电影理论片| 日日夜夜免费精品| 美美哒免费高清在线观看视频一区二区| 亚洲成a人v欧美综合天堂 | 久久久精品黄色| 欧美极品aⅴ影院| 1000精品久久久久久久久| 亚洲特级片在线| 国产在线精品免费| 狠狠色2019综合网| 成人免费观看男女羞羞视频| 欧洲一区二区三区在线| 日韩一级黄色大片| 久久久99久久| 亚洲另类一区二区| 日本大胆欧美人术艺术动态| 国内精品嫩模私拍在线| 成人精品在线视频观看| 色999日韩国产欧美一区二区| 欧美亚洲一区二区在线| 日韩精品在线网站| 中文字幕不卡在线观看| 亚洲午夜国产一区99re久久| 蜜臀av性久久久久蜜臀aⅴ| 国产一区二区免费在线| 色综合久久中文字幕| 日韩午夜中文字幕| 中文字幕中文乱码欧美一区二区| 亚洲bt欧美bt精品777| 国产大陆亚洲精品国产| 欧美亚洲一区二区在线| 337p日本欧洲亚洲大胆精品| 亚洲欧美激情小说另类| 久草这里只有精品视频| 欧美视频中文一区二区三区在线观看 | 国产白丝网站精品污在线入口| 成人午夜av电影| 91精品国产入口| 中文字幕一区二区不卡| 美女在线一区二区| 欧美亚洲国产bt| 欧美激情在线观看视频免费| 日韩高清不卡在线| 日本精品一区二区三区高清| 国产亚洲精久久久久久|