Java TCP Swing聊天程序
下载地址 http://download.csdn.net/download/onlyxiahui/9347191
账号 10001~10100等
密码都是123
客户端的入口:com.oim.app.AppStartup
服务端的入口:com.oim.ui.MainFrame
代码片段(8)[全屏查看所有代码]
1. [图片] 1.png

2. [图片] 2.png

3. [图片] 3.png

4. [图片] 4.jpg

5. [图片] 5.jpg

6. [图片] 6.png

7. [图片] 7.png

8. [代码][Java]代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
public class AppStartup implements Runnable { AppContext appContext = new AppContext(); public static void main(String[] args) { try { UIManager.setLookAndFeel( "com.seaglasslookandfeel.SeaGlassLookAndFeel" ); // UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception ex) { java.util.logging.Logger.getLogger(AppStartup. class .getName()).log(java.util.logging.Level.SEVERE, null , ex); } java.awt.EventQueue.invokeLater( new AppStartup()); } @Override public void run() { long time = System.currentTimeMillis(); LoginView loginView = appContext.getSingleView(LoginView. class ); loginView.setVisible( true ); System.out.println(System.currentTimeMillis() - time); appContext.start(); new initApp().start(); } class initApp extends Thread { @Override public void run() { long time = System.currentTimeMillis(); initTheme(); appContext.getSingleView(MainView. class ); appContext.getSingleView(TrayView. class ); appContext.getSingleView(FindView. class ); appContext.getSingleView(AddView. class ); System.out.println(System.currentTimeMillis() - time); } void initTheme() { Theme theme = (Theme) ConfigManage.get(Theme.config_file_path, Theme. class ); Image imaeg = new ImageIcon(theme.getWindowBackgroundImage()).getImage(); BufferedImage bi = new BufferedImage(imaeg.getWidth( null ), imaeg.getHeight( null ), BufferedImage.TYPE_INT_RGB); Graphics2D biContext = bi.createGraphics(); biContext.drawImage(imaeg, 0 , 0 , null ); bi = OnlyImageUtil.applyGaussianFilter(bi, null , theme.getGaussian()); UIBox.put( "key_window_background_image" , bi); // // for (OnlyBorderFrame ourFrame : UIBox.frameSet) { // ourFrame.setBackgroundImage(bi); // } // for (OnlyBorderDialog ourFrame : UIBox.dialogSet) { // ourFrame.setBackgroundImage(bi); // } } } } |
Java TCP Swing聊天程序的更多相关文章
- java Socket多线程聊天程序
参考JAVA 通过 Socket 实现 TCP 编程 参考java Socket多线程聊天程序(适合初学者) 以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包 ...
- Java使用UDP聊天程序
主要想测试Java UDP通信.Java UDP使用DatagramSocket和DatagramPacket完成UDP通信 主要思路: 1.本机通信,ip地址为:127.0.0.1 2.开一个线程监 ...
- Qt-网络与通信-TCP版本聊天程序
代码在公司,考不出来,智能用书里自带的例子来写了. 不过这个TCP版本的程序并没有出来书上的效果,具体问题出在哪里还没有找到,运行书里自带的代码也是这样. 另外发现一个问题 Qt5.8.0VS版本对中 ...
- Java使用TCP聊天程序
前面使用了UDP进行通信的聊天程序 现在做一个用TCP进行通信的聊天程序 原理: ServerSocket Socket 1.开一个线程监听端口,准备接收消息 2.不断接受消息发送到目的端口 P.S. ...
- 利用TCP协议,实现基于Socket的小聊天程序(初级版)
TCP TCP (Transmission Control Protocol)属于传输层协议.其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送.可靠性.有效流控.全双工操作和多路复用 ...
- 你也可以写聊天程序 - C# Socket学习1
简述 我们做软件工作的虽然每天都离不开网络,可网络协议细节却不是每个人都会接触和深入了解.我今天就来和大家一起学习下Socket,并写一个简单的聊天程序. 一些基础类 首先我们每天打开浏览器访问网页信 ...
- 你也可以写个聊天程序 - C# Socket学习1
原文:你也可以写个聊天程序 - C# Socket学习1 简述 我们做软件工作的虽然每天都离不开网络,可网络协议细节却不是每个人都会接触和深入了解.我今天就来和大家一起学习下Socket,并写一个简单 ...
- Java基础---Java---网络编程---TCP的传输、客户端和服务端的互访、建立一个文本转换器、编写一个聊天程序
演示TCP的传输的客户端和服务端的互访 需求:客户端给服务端发送数据,服务端收到后,给客户端反馈信息. 客户端: 1.建立Socket服务,指定要连接方朵和端口 2.获取Socket流中的输出流,将数 ...
- java swing+socket实现多人聊天程序
swing+socket实现多人聊天程序 1.准备工作 先看效果: 客户端项目结构图: 服务端项目结构图: 2.运行原理 服务端 先开一个线程serverListerner,线程中开启一个Server ...
随机推荐
- mysql sql 百万级数据库优化方案
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- Swift - 自动布局库SnapKit的使用详解2(约束的更新、移除、重做)
在之前的文章中我介绍了如何使用SnapKit的 snp_makeConstraints 方法进行各种约束的设置.但有时我们的页面并不是一直固定不变的,这就需要修改已经存在的约束.本文介绍如何更新.移除 ...
- C 记录
为什么调用 sqrt 函数报错显示未定义 一.调用此函数时,要先引用头文件:#include <math.h>二.linux gcc 编译时,如果用到了 math中的函数,要手工加入函数库 ...
- Android打开新的Activity并同时关闭当前Activity
Intent it = new Intent(); it.setClass(EditActivity.this, MainActivity.class); it.setFlags(Intent.FLA ...
- elementoryOS / ubuntu U盘启动问题的解决
具体现象: 进入U盘启动后,停顿在"start booting from usb device..."不动. 解决方法: 将syslinux文件夹下的syslinux.cfg中的 ...
- SharePoint表单和工作流 - Nintex篇(三)
博客地址 http://blog.csdn.net/foxdave 接上篇点击打开链接 跳转到网站设置的Nintex设置,我们来挨个了解一下,这里面一共有15项设置,本篇我们先了解前7个. " ...
- Date的转换
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String str = sdf.format(一个date对 ...
- SQL Server CONVERT() 函数(转)
定义和用法 CONVERT() 函数是把日期转换为新数据类型的通用函数. CONVERT() 函数可以用不同的格式显示日期/时间数据. 语法 CONVERT(data_type(length),dat ...
- 检测INT3 软断点
“INT3”断点指令的机器码是 “0xcch” 检测思路,取函数地址,判断第一个字节是不是 “CCh” BYTE bFirst = ; ProcAddres = GetProcAddress(Load ...
- Python计算文件MD5值
import hashlib def fileMD5(filename): m = hashlib.md5() #md5计算 #m = hashlib.sha1() #sha1计算 #m = hash ...