freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科畢業(yè)論文-基于java的多人網(wǎng)絡聊天室設計-資料下載頁

2025-06-03 17:00本頁面
  

【正文】 } } return null。 } //初始化好友樹的方法 public DefaultMutableTreeNode initTree(){ DefaultMutableTreeNode root = new DefaultMutableTreeNode (好友列表 (+me+))。 if(!=nullamp。amp。()0){ ()。 for(int i =0。i()。i++){ //不將自己放在好友列表上 if((i).equals(me)){ continue。 } DefaultMutableTreeNode friend = new DefaultMutableTreeNode ((i))。 TalkingMainTreeInfo treeNodeInfo = new TalkingMainTreeInfo((i),friend)。 (treeNodeInfo)。 (friend)。 } } return root。 } } 聊天窗口和文件傳輸界面 服務器端和客戶端通過 I/O 流,在建立用戶建立會話之前,會先建立一個 socket連接,用來接收請求和發(fā)送請求消息,用戶之間的數(shù)據(jù)傳輸是通過 Socket 連接服務器端然后轉給另一個服務器端的,其中我們通過流來翻譯字節(jié)和復制字符然后傳輸給用戶,和傳輸文件的原理是差不多的。 關鍵代碼: public class TalkWindow { private JFrame jFrame = null。 // @jve:declindex=0:visualconstraint=168,56 private JPanel jContentPane = null。 private JPanel jPanel = null。 private JTextField jTextField = null。 private JButton jButton = null。 private JScrollPane jScrollPane = null。 private JTextArea jTextArea = null。 private LinkInfo linkInfo。 private String me。 private String target。 private OutputStream out。// 連接服務器端的輸出流 // 準備傳送的文件 private File readyforsendfile。 // 準備接收的文件 private File readyfetFile。 /** * This method initializes jScrollPane * * @return */ private JScrollPane getJScrollPane() { if (jScrollPane == null) { jScrollPane = new JScrollPane()。 (new Rectangle(1, 1, 336, 194))。 (getJTextArea())。 } return jScrollPane。 } // 關閉窗口的同時刪除聊天窗口信息 public void closeFrameAndClearTalkWindowInfo() { for (int i = 0。 i ().size()。 i++) { if (().get(i).getTalkingWindow() .equals(this)) { ().remove(i)。 break。 } } ()。 } // 關閉聊天窗口 public void closeFrame() { ()。 } /** * This method initializes jTextArea * * @return */ private JTextArea getJTextArea() { if (jTextArea == null) { jTextArea = new JTextArea()。 (true)。 (false)。 } return jTextArea。 } public TalkWindow(String me, String target, LinkInfo linkInfo) { ().setVisible(true)。 = me。 = target。 = linkInfo。 if ((ALL)) { (群聊中 ...)。 } else { (與 + target + 聊天中 ...)。 } try { out = ().getOutputStream()。 } catch (IOException e) { // TODO 自動生成 catch 塊 ()。 } } /** * This method initializes jFrame * * @return */ private JFrame getJFrame() { if (jFrame == null) { jFrame = new JFrame()。 (null)。 (new Dimension(361, 349))。 (false)。 (getJContentPane())。 (new () { public void windowClosing( e) { ()。 removeTalkWindowInfo()。 } })。 } return jFrame。 } private void removeTalkWindowInfo() { for (int i = 0。 i ().size()。 i++) { if (().get(i).getTalkingWindow() .equals(this)) { ().remove(i)。 break。 } } } /** * This method initializes jContentPane * * @return */ private JPanel getJContentPane() { if (jContentPane == null) { jContentPane = new JPanel()。 (null)。 (getJPanel(), null)。 } return jContentPane。 } /** * This method initializes jPanel1 * * @return */ private JPanel getJPanel() { if (jPanel == null) { jPanel = new JPanel()。 (null)。 (new Rectangle(0, 1, 345, 310))。 (getJTextField(), null)。 (getJButton(), null)。 (true)。 (getJScrollPane(), null)。 } return jPanel。 } /** * This method initializes jTextField * * @return */ private JTextField getJTextField() { if (jTextField == null) { jTextField = new JTextField()。 (new Rectangle(5, 203, 333, 35))。 (new () { public void keyPressed( e) { if (() == ) { sendMessageToServer()。 } } })。 } return jTextField。 } /** * This method initializes jButton * * @return */ private JButton getJButton() { if (jButton == null) { jButton = new JButton()。 (new Rectangle(193, 254, 138, 49))。 (發(fā)送文件 )。 (new () { public void actionPerformed( e) { sendFile()。 } })。 } return jButton。 } public boolean sendMessageToServer() { // 如果已經(jīng)沒有好友在線,則告知用戶,此好友已下線 if (().size() == 0) { (已無用戶在線 ...\n)。 ().setValue( ().getMaximum())。 return false。 } // 沒有目標對象就是群聊 if ((ALL)) { (, out)。 ((), out)。 (() + 我說 :\n + () + \n)。 ().setValue( ().getMaximum())。 ()。 return true。 } if (().size() 0) { boolean friendOnline = false。// 當前聊天對象是否在線 for (int i = 0。 i ().size()。 i++) { if (().get(i).equals(target)) { friendOnline = true。 break。 } } // 如果當前聊天對象不在線,則告知用戶,此好友已下線 if (!friendOnline) { (() + + 已下線 ..信息發(fā)送失敗 \n)。 ().setValue( ().getMaximum())。 return false。 } } // 如果輸入框中有信息,將聊天信息發(fā)送給服務器端 if (!().equals()) { (, out)。 (target, out)。 ((), out)。 (() + 我說 :\n + () + \n)。 ().setValue( ().getMaximum())。 ()。 return true。 } return false。 } // 將聊天信息顯示到聊天對話框中 public void showMessage(String message) { (() + target + 說 :\n + message + \n)。 ().setValue( ().getMaximum())。 } // 顯示群聊信息 public void showAllMessage(String from, String message) { (() + from + 說 :\n + message + \n)。 ().setValue( ().getMaximum())。 } // 提示傳送文件響應 public void alertFileResponse(String from, String fileName) { int v = (jPanel, 用戶 : + from + 向您發(fā)送文件 [ + fileName + ],是否接收 ?)。 if (v == ) {
點擊復制文檔內(nèi)容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1