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

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

?? clientwindow.java

?? QQ聊天工具的源代碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
                        Class[] types = new Class [] {
                                java.lang.String.class
                        };
                        boolean[] canEdit = new boolean [] {
                                false
                        };

                        public Class getColumnClass(int columnIndex) {
                                return types [columnIndex];
                        }

                        public boolean isCellEditable(int rowIndex, int columnIndex) {
                                return canEdit [columnIndex];
                        }
                });
                jScrollPane5.setViewportView(activeuserTab);

                transmitBtn.setText("transmit file");
                transmitBtn.addActionListener(new java.awt.event.ActionListener() {
                        public void actionPerformed(java.awt.event.ActionEvent evt) {
                                transmitBtnActionPerformed(evt);
                        }
                });

                logoffBtn.setText("LOG OFF");
                logoffBtn.addActionListener(new java.awt.event.ActionListener() {
                        public void actionPerformed(java.awt.event.ActionEvent evt) {
                                logoffBtnActionPerformed(evt);
                        }
                });

                javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
                getContentPane().setLayout(layout);
                layout.setHorizontalGroup(
                        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                        .addGroup(layout.createSequentialGroup()
                                                .addGap(29, 29, 29)
                                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                                        .addComponent(usernameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 59, javax.swing.GroupLayout.PREFERRED_SIZE)
                                                        .addComponent(IPLabel))
                                                .addGap(90, 90, 90)
                                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                                        .addComponent(IPtextLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                        .addComponent(usernametextLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 84, Short.MAX_VALUE)))
                                        .addGroup(layout.createSequentialGroup()
                                                .addContainerGap()
                                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                                        .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 456, Short.MAX_VALUE)
                                                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 456, javax.swing.GroupLayout.PREFERRED_SIZE)
                                                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                                                                .addComponent(privateBtn)
                                                                .addGap(16, 16, 16)
                                                                .addComponent(sendBtn, javax.swing.GroupLayout.PREFERRED_SIZE, 74, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                                .addGap(26, 26, 26)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                        .addComponent(logoffBtn, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                        .addComponent(transmitBtn, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                        .addComponent(jScrollPane5, javax.swing.GroupLayout.DEFAULT_SIZE, 140, Short.MAX_VALUE))
                                .addGap(25, 25, 25))
                );
                layout.setVerticalGroup(
                        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                                .addGap(34, 34, 34)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(usernameLabel)
                                        .addComponent(usernametextLabel))
                                .addGap(13, 13, 13)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(IPLabel)
                                        .addComponent(IPtextLabel))
                                .addGap(25, 25, 25)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                        .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGroup(layout.createSequentialGroup()
                                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 182, javax.swing.GroupLayout.PREFERRED_SIZE)
                                                .addGap(26, 26, 26)
                                                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 98, javax.swing.GroupLayout.PREFERRED_SIZE)
                                                .addGap(42, 42, 42)
                                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                                        .addComponent(sendBtn)
                                                        .addComponent(privateBtn)
                                                        .addComponent(transmitBtn))))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, Short.MAX_VALUE)
                                .addComponent(logoffBtn)
                                .addContainerGap())
                );
                pack();
        }// </editor-fold>//GEN-END:initComponents
//登出按鈕,調用log函數,正常結束連接;
	private void logoffBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_logoffBtnActionPerformed
// TODO 將在此處添加您的處理代碼:
		log("off");
		this.setVisible(false);  
		new logon().setVisible(true);
		
	}//GEN-LAST:event_logoffBtnActionPerformed
//傳輸文件請求按鈕;請求向一個特定的在線用戶傳文件;
	private void transmitBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_transmitBtnActionPerformed
// TODO 將在此處添加您的處理代碼:
		try{
			String input = sendtextTA.getText();
			int r = activeuserTab.getSelectedRow();
			int c = activeuserTab.getSelectedColumn();		//從在線用戶列表中選擇請求對象;
			String tarname = (String)activeuserTab.getValueAt(r,c);
			if(tarname != null)
			{
				filechooser frame1 = new filechooser(tarname, rckey);	//初始化一個filechooser, 并將對象用戶名&自己sission key 傳進參數;
				frame1.setTitle("檔案選擇對話方塊");
				frame1.setSize(550,350);
				frame1.setVisible(true);
			}else
			{
				JOptionPane.showMessageDialog(null,"您的好友可能不在線,請重新選擇", "warning", JOptionPane.INFORMATION_MESSAGE);
			}

		}catch(java.lang.ArrayIndexOutOfBoundsException aiofex)
		{
			JOptionPane.showMessageDialog(null,"請先選擇請求對象", "error", JOptionPane.ERROR_MESSAGE);
		}
	}//GEN-LAST:event_transmitBtnActionPerformed
//好友私聊按鈕;
	private void privateBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_privateBtnActionPerformed
// TODO 將在此處添加您的處理代碼:
		try{
			String input = sendtextTA.getText();
			int r = activeuserTab.getSelectedRow();
			int c = activeuserTab.getSelectedColumn();				//選擇好友;
			String tarname = (String)activeuserTab.getValueAt(r,c);
			if(tarname==null)							//好友為null
			{
				JOptionPane.showMessageDialog(null,"您的好友可能不在線,請重新選擇", "warning", JOptionPane.INFORMATION_MESSAGE);
			}
			else
			{	
				if(input.equals(""))
				{
					JOptionPane.showMessageDialog(null,"跟好友什么都不說,這樣不太好吧!", "warning", JOptionPane.INFORMATION_MESSAGE);
				}else
				{
					sendtextTA.setText("");
					//message 為特定格式消息; 以[好友姓名]開頭.此消息與原文檔不同,原文檔無此消息;
					String message = "["+tarname+"]"+PORT+"&"+usernametextLabel.getText() + " talks to " + tarname + ":" + input+"\n";
					message = EncryptAndDecrypt.encryption(message, rckey, "RC4");
					try{
						Socket skt = new Socket("127.0.0.1",2501);		//服務器處理私聊的端口為2501
						DataOutputStream dos = new DataOutputStream(skt.getOutputStream());
						dos.writeBytes(message+"&"+usernametextLabel.getText());
						dos.close();
						skt.close();
					}catch(UnknownHostException unex)
					{
						System.err.println(unex);
					}catch(IOException ioex)
					{
						System.err.println(ioex);
					}
				}
			}
		}catch(java.lang.ArrayIndexOutOfBoundsException aiofex)
		{
			JOptionPane.showMessageDialog(null,"請先選擇好友", "error", JOptionPane.ERROR_MESSAGE);
		}
	}//GEN-LAST:event_privateBtnActionPerformed

	private void messageTAAncestorAdded(javax.swing.event.AncestorEvent evt) {//GEN-FIRST:event_messageTAAncestorAdded
// TODO 將在此處添加您的處理代碼:
		new Listen().start();
	}//GEN-LAST:event_messageTAAncestorAdded
//發送群聊按鈕;
	private void sendBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_sendBtnActionPerformed
// TODO 將在此處添加您的處理代碼:
		String input = sendtextTA.getText();
		if(input.equals(""))
		{ 
			JOptionPane.showMessageDialog(null,"跟大家什么都不說,這樣不太好吧!", "warning", JOptionPane.INFORMATION_MESSAGE);
		}else
		{
			sendtextTA.setText("");
			String message = PORT+"&"+usernametextLabel.getText() + " talks to everyone:" + input+"\n";
			message = EncryptAndDecrypt.encryption(message, rckey, "RC4");
			try{
				Socket skt = new Socket("127.0.0.1",2002);		//服務器處理群聊消息端口為2002;
				DataOutputStream dos = new DataOutputStream(skt.getOutputStream());
				dos.writeBytes(message+"&"+usernametextLabel.getText());
				dos.close();
				skt.close();
			}catch(UnknownHostException unex)
			{
				System.err.println(unex);
			}catch(IOException ioex)
			{
				System.err.println(ioex);
			}
		}
	}//GEN-LAST:event_sendBtnActionPerformed

	/**
	 * @param args the command line arguments
	 */
	public static void main(String args[]) {
		java.awt.EventQueue.invokeLater(new Runnable() {
			public void run() {
				new clientWindow("Guest","\0.0.0.0","").setVisible(true);
			}
		});
	}
	
        // 變量聲明 - 不進行修改//GEN-BEGIN:variables
        private javax.swing.JLabel IPLabel;
        private javax.swing.JLabel IPtextLabel;
        private javax.swing.JTable activeuserTab;
        private javax.swing.JScrollPane jScrollPane1;
        private javax.swing.JScrollPane jScrollPane2;
        private javax.swing.JScrollPane jScrollPane3;
        private javax.swing.JScrollPane jScrollPane4;
        private javax.swing.JScrollPane jScrollPane5;
        private javax.swing.JTable jTable1;
        private javax.swing.JTable jTable2;
        private javax.swing.JButton logoffBtn;
        private javax.swing.JTextArea messageTA;
        private javax.swing.JButton privateBtn;
        private javax.swing.JButton sendBtn;
        private javax.swing.JTextArea sendtextTA;
        private javax.swing.JButton transmitBtn;
        private javax.swing.JLabel usernameLabel;
        private javax.swing.JLabel usernametextLabel;
        // 變量聲明結束//GEN-END:variables
	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产乱码字幕精品高清av| 国产精品夜夜嗨| 一区二区中文字幕在线| 欧美经典一区二区| 国产视频不卡一区| 国产女人水真多18毛片18精品视频| 精品久久久久久久久久久久包黑料| 日韩午夜电影在线观看| 精品奇米国产一区二区三区| 欧美成人一级视频| 欧美v日韩v国产v| 久久新电视剧免费观看| 欧美高清在线精品一区| 中文字幕亚洲一区二区va在线| 中文字幕不卡在线观看| 最新国产精品久久精品| 亚洲欧美日韩国产成人精品影院| 一区二区在线观看视频| 亚洲一区av在线| 日韩精品一二三四| 精品一二三四区| 99久久99久久免费精品蜜臀| 欧美亚洲国产bt| 欧美videossexotv100| 国产精品嫩草影院av蜜臀| 亚洲欧洲www| 日韩中文字幕1| 国产激情一区二区三区桃花岛亚洲| 不卡一区二区三区四区| 欧美日韩一区二区三区不卡| 日韩精品一区二区三区蜜臀| 国产精品区一区二区三区| 亚洲午夜日本在线观看| 另类的小说在线视频另类成人小视频在线 | 国产成人在线视频播放| 91麻豆精品视频| 正在播放亚洲一区| 中文字幕永久在线不卡| 丝袜美腿亚洲综合| 国产aⅴ综合色| 这里只有精品99re| 中文字幕在线不卡| 九九视频精品免费| 日本乱人伦一区| 久久亚洲免费视频| 丝袜亚洲精品中文字幕一区| 成人app在线| 精品伦理精品一区| 天天影视色香欲综合网老头| 国产成人在线视频免费播放| 欧美一区二区三区在线观看| 一区二区三区在线播| 国产精品自拍三区| 欧美美女激情18p| 成人免费视频在线观看| 国产乱码字幕精品高清av | 中文字幕av一区二区三区免费看| 亚洲国产成人av| 色婷婷亚洲精品| 亚洲国产精华液网站w| 毛片不卡一区二区| 欧美日韩午夜影院| 亚洲精品日韩一| 99精品视频免费在线观看| 国产三级精品视频| 国产精一品亚洲二区在线视频| 欧美一区二区三区免费视频 | 蜜桃视频第一区免费观看| 欧美午夜片在线看| 亚洲男人电影天堂| 972aa.com艺术欧美| 中文字幕av一区二区三区免费看| 国产在线看一区| 欧美变态tickling挠脚心| 日韩高清一区二区| 欧美高清视频不卡网| 亚洲国产精品影院| 欧美视频中文字幕| 亚洲国产精品人人做人人爽| 欧美制服丝袜第一页| 一区二区三区欧美久久| 欧美三级一区二区| 午夜精品久久一牛影视| 91精品国产色综合久久久蜜香臀| 性做久久久久久| 69久久99精品久久久久婷婷| 日韩电影免费在线| 欧美成人一区二区| 国产不卡免费视频| 国产精品欧美精品| 在线视频你懂得一区二区三区| 亚洲精品欧美二区三区中文字幕| 91福利精品视频| 日本伊人午夜精品| 久久一区二区三区国产精品| 国产高清不卡二三区| 亚洲欧美电影院| 在线成人免费视频| 国内成人精品2018免费看| 国产精品免费丝袜| 欧美性色黄大片手机版| 狠狠色丁香婷婷综合| 1区2区3区精品视频| 欧美日韩中文字幕一区二区| 麻豆成人av在线| 国产精品私房写真福利视频| 在线免费亚洲电影| 精品一区二区三区欧美| 中文字幕制服丝袜一区二区三区 | 精品影视av免费| 国产精品美女久久久久aⅴ| 在线观看一区日韩| 国产美女主播视频一区| 一区二区三区免费| 精品少妇一区二区三区在线播放 | 亚洲一区二区3| 欧美精品一区二区在线播放| caoporn国产一区二区| 日本va欧美va瓶| 亚洲精品国产第一综合99久久| 日韩三级视频在线看| av动漫一区二区| 久久er精品视频| 亚洲大片一区二区三区| 久久免费午夜影院| 欧美日本不卡视频| 日本韩国欧美国产| 国产一区在线精品| 青娱乐精品视频在线| 亚洲人成精品久久久久| 久久久久久97三级| 日韩欧美aaaaaa| 欧美在线一二三| 91在线免费视频观看| 国产高清精品在线| 久久国产精品第一页| 日日摸夜夜添夜夜添亚洲女人| 日韩美女视频一区二区| 久久久久久麻豆| 欧美videos中文字幕| 欧美一级久久久久久久大片| 欧美亚一区二区| 91福利国产成人精品照片| 99久久国产免费看| av亚洲精华国产精华精华| 国产盗摄女厕一区二区三区| 国产一区美女在线| 精品一区二区三区在线视频| 日本不卡视频在线| 日韩av中文在线观看| 舔着乳尖日韩一区| 午夜精品影院在线观看| 一区二区三区欧美视频| 一区二区三区精品视频| 亚洲精品国产无天堂网2021| 亚洲黄色性网站| 亚洲国产一区在线观看| 亚洲成人动漫av| 日韩国产在线观看| 日本亚洲一区二区| 精品午夜久久福利影院| 国产在线不卡视频| 国产一区二区三区在线观看免费| 国产在线播精品第三| 成人国产精品免费观看视频| 成人午夜私人影院| 91麻豆自制传媒国产之光| 色婷婷狠狠综合| 精品视频一区三区九区| 欧美蜜桃一区二区三区| 精品区一区二区| 国产精品日韩成人| 一区二区三区中文字幕电影 | 色素色在线综合| 91精品国产91久久久久久一区二区 | 色94色欧美sute亚洲13| 欧美日韩你懂的| 久久久久久毛片| 亚洲男人都懂的| 伦理电影国产精品| 99re热视频这里只精品| 在线播放中文一区| 2023国产一二三区日本精品2022| 中文字幕第一区二区| 亚洲成av人在线观看| 国产老肥熟一区二区三区| 91福利在线免费观看| 欧美不卡视频一区| 亚洲精品乱码久久久久久| 激情成人午夜视频| 日本国产一区二区| 久久精品综合网| 偷窥少妇高潮呻吟av久久免费| 国产在线视视频有精品| 91久久奴性调教| 国产人妖乱国产精品人妖| 五月婷婷综合激情| av爱爱亚洲一区| 精品精品国产高清一毛片一天堂| 亚洲免费看黄网站|