資源簡介
建立一個局域網內的簡單的P2P消息系統,程序既是服務器又是客戶端
代碼片段和文件信息
package?com.p2p.java;
import?java.awt.*;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?javax.swing.*;
/**
?*?登錄時顯示的界面,登錄后彈出新的窗口
?*?@author?TangYingjie
?*
?*/
public?class?login?extends?Jframe{
private?static?final?long?serialVersionUID?=?1L;
public?static?String?username=““;
JPanel?contentPane=new?JPanel();
JTextField?user=?new?JTextField();
JLabel?label_1=?new?JLabel(“聊天用戶名:“);
JLabel?label_2=?new?JLabel(“請先輸入聊天昵稱!“);
JButton?button_0=?new?JButton(“登錄“);
JButton?button_1=?new?JButton(“取消“);
??
??public?login(){
??
?? super(“聊天用戶登錄“);??//設置標題????
????setSize(400?180);???//設置大小?
????setLocationRelativeTo(null);??????????????//使整個窗口顯示在屏幕中央
setResizable(false);??????????????????????//設置窗體不可改變大小
setContentPane(contentPane);
contentPane.setLayout(null);
????String?path?=?“image/background.jpg“;??//背景圖片的路徑。(相對路徑或者絕對路徑。本例圖片放于“java項目名“的文件下)?????
????ImageIcon?background?=?new?ImageIcon(path);???//?背景圖片???
????JLabel?label?=?new?JLabel(background);????//?把背景圖片顯示在一個標簽里面????
????label.setBounds(0?0?this.getWidth()?this.getHeight());???//?把標簽的大小位置設置為圖片剛好填充整個面板?????
????JPanel?imagePanel?=?(JPanel)?this.getContentPane();???//?把內容窗格轉化為JPanel,否則不能用方法setOpaque()來使內容窗格透明?
????imagePanel.setOpaque(false);?????
????this.getlayeredPane().add(label?new?Integer(Integer.MIN_VALUE));???//?把背景圖片添加到分層窗格的最底層作為背景??
????setLookAndFeel();
????setVisible(true);???//設置可見
????setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);???//點關閉按鈕時退出?
label_1.setBounds(402610040);?
label_1.setFont(new?Font(“微軟雅黑“?Font.BOLD?14));???
contentPane.add(label_1);
label_2.setFont(new?Font(“微軟雅黑“?Font.BOLD?14));
user.setBounds(1353315030);
user.setFont(new?Font(“微軟雅黑“?Font.BOLD?15));
contentPane.add(user);
button_0.setBounds(1357515030);
button_0.setFont(new?Font(“微軟雅黑“Font.BOLD?15));
contentPane.add(button_0);
button_1.setBounds(135?110?15030?);
button_1.setFont(new?Font(“微軟雅黑“Font.BOLD?15));
contentPane.add(button_1);
button_0.addActionListener(new?button_Action());
button_1.addActionListener(new?button_1Action());
??}
??//為登錄按鈕設置監聽
??class?button_Action?implements?ActionListener{
??public?void?actionPerformed(ActionEvent?arg0){
??
??username=user.getText();
??//當輸入的用戶名中不包含空格并且不為空時允許登錄
??if(?username.indexOf(“?“)?==?-1?&&?!username.equals(““)?){
????
?setVisible(false);
?? //Swing?實用方法的集合導致?doRun.run()?在?AWT?事件指派線程上異步執行。
????????SwingUtilities.invokeLater(new?Runnable()?{
????????????public?void?run()?{
????????????????try?{
???????????????? //UIManager?管理當前外觀、可用外觀集合、外觀更改時被通知的?PropertyChangeListeners、
???????????????? //外觀默認值以及獲取各種默認值的便捷方法
????????????????????UIManager.setLookAndFeel(UIManager.
?????????????????????????????????????????????getSystemLookAndFeelClassName());
????????????????}?catch?(Exception?exception)?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-01-14?11:41??java基于P2P的局域網即時通信系統\
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\
?????文件?????????301??2017-05-03?09:46??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\.classpath
?????文件?????????425??2017-05-03?09:46??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\.project
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\.settings\
?????文件?????????598??2017-05-03?09:46??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\
?????目錄???????????0??2019-01-04?21:06??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\
?????文件?????????819??2017-05-03?13:21??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainshow$Myw_reflash_msg_adapter.class
?????文件?????????828??2017-05-03?13:21??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainshow$Myw_reflash_people_adapter.class
?????文件?????????983??2017-05-03?13:21??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainshow$Myw_send_adapter.class
?????文件????????4263??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainshow.class
?????文件?????????871??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$1.class
?????文件????????1334??2017-05-03?12:45??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$2$1.class
?????文件????????2046??2017-05-03?12:45??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$2$2.class
?????文件????????1909??2017-05-03?12:45??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$2$3.class
?????文件????????1464??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$2.class
?????文件????????1203??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$3.class
?????文件????????1788??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$4.class
?????文件????????1674??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$5.class
?????文件?????????964??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$6.class
?????文件????????1019??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread$7.class
?????文件????????3331??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Mainthread.class
?????文件????????1375??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\NowTime.class
?????文件????????2990??2017-05-03?12:45??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\Receive.class
?????文件????????2521??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\ReceiveFile.class
?????文件????????2981??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\ReceiveIp.class
?????文件????????2711??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\ReceiveToOne.class
?????文件????????2903??2017-07-01?00:01??java基于P2P的局域網即時通信系統\基于P2P的局域網即時通信系統\bin\com\p2p\java\SendFile.class
............此處省略34個文件信息
評論
共有 條評論