资源简介
swing 实现的带表情聊天示例,可以图文混聊,可以设置字体,有聊天表情选择框功能,有悬浮提示功能,有聊天表情信息和文字的传送功能,原理简单,主要使用到的类和技术有JTextPane,JWindow,JFrame,UDP通讯
代码片段和文件信息
package com.zou.chat;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.frame;
import java.awt.Point;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.linkedList;
import java.util.List;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextPane;
import javax.swing.ScrollPaneConstants;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.plaf.FontUIResource;
import javax.swing.text.BadLocationException;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.styleConstants;
import javax.swing.text.styledDocument;
/**
* 聊天窗体类
* @author yangxing zou
* @version 0.1
*/
public class Chatframe extends Jframe implements MouseListener{
private static final long serialVersionUID = 1L;
public final int fwidth = 550;
public final int fheight = 500;
/* 左边和右边要显示的界面 */
public JLabel left = new JLabel();
JScrollPane jspChat;
/*聊天内容*/
private JTextPane jpChat;
/*要发送的内容*/
private JTextPane jpMsg;
JScrollPane jspMsg;
/* 插入文字样式就靠它了*/
private styledDocument docChat = null;
private styledDocument docMsg = null;
private JButton btnSend;
/*好友的ip*/
/*private String friendIP;*/
/*好友接收消息的端口*/
/*private int friendPort;*/
/*字体名称;字号大小;文字颜色*/
private JComboBox fontName = null fontSize = nullfontColor = null;
/*插入按钮;清除按钮;插入图片按钮*/
private JButton b_shake=nullb_pic b_remove = null;
private static final Color TIP_COLOR = new Color(255 255 225);
/* 错误信息气泡提示*/
private CoolToolTip error_tip;
/*表情框*/
private PicsJWindow picWindow;
private List myPicInfo = new linkedList();
private List receivdPicInfo = new linkedList();
class PicInfo{
/* 图片信息*/
int pos;
String val;
public PicInfo(int posString val){
this.pos = pos;
this.val = val;
}
public int getPos() {
return pos;
}
public void setPos(int pos) {
this.pos = pos;
}
public String getVal() {
return val;
}
public void setVal(String val) {
this.val = val;
}
}
public JButton getPicBtn(){
return b_pic;
}
public Chatframe() {
init();
}
/**
* 插入图片
*
* @param icon
*/
public void insertS
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 192 2011-10-19 15:31 使用说明.txt
文件 286 2011-10-14 11:56 picChat\.classpath
文件 383 2011-10-19 11:22 picChat\.project
文件 86 2011-10-10 18:50 picChat\.settings\org.eclipse.core.resources.prefs
文件 692 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 987 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 1290 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 3038 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 956 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 2376 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 15484 2011-10-19 15:18 picChat\bin\com\zou\chat\Chatfr
文件 626 2011-10-19 13:38 picChat\bin\com\zou\chat\ChatPic.class
文件 816 2011-10-19 13:38 picChat\bin\com\zou\chat\CoolToolTip$1.class
文件 3500 2011-10-19 13:38 picChat\bin\com\zou\chat\CoolToolTip.class
文件 410 2011-10-19 13:38 picChat\bin\com\zou\chat\MsgType.class
文件 1806 2011-10-19 13:38 picChat\bin\com\zou\chat\PicsJWindow$1.class
文件 777 2011-10-19 13:38 picChat\bin\com\zou\chat\PicsJWindow$2.class
文件 4389 2011-10-19 13:38 picChat\bin\com\zou\chat\PicsJWindow.class
文件 1810 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\0.gif
文件 1582 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\1.gif
文件 3716 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\10.gif
文件 1780 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\100.gif
文件 2443 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\101.gif
文件 1446 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\102.gif
文件 2166 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\103.gif
文件 2169 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\104.gif
文件 8033 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\11.gif
文件 2247 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\12.gif
文件 1736 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\13.gif
文件 4006 2011-10-18 00:44 picChat\bin\com\zou\chat\qqdefaultface\14.gif
............此处省略224个文件信息
相关资源
- Swing 编写的数独软件,界面友好,算
- swingExcel
- 商品出入库+derby数据库
- 一个仿steam,有登陆注册功能,还有验
- 很强大-功能齐全带分页的swing项目
- 驾考系统.7z
- Swing精美界面设计和动画制作教程+
- 报刊订阅系统(需联网).rar
- Swing可视化插件Eclipse
- 物联网环境监测数据中心-物联网项目
- 基于Swing框架的KTV点歌系统
- 汽车租赁系统.zip
- 单机火车票购票系统
- SWING GUI 美化包及使用说明 JTattoo 各种
- JTable自动换行
- 联机贪吃蛇
- QQ聊天窗口泡泡模式的Swing实现
- 大学生社团管理系统
- swing实现的猫版聊天室
- 车辆管理系统.zip
- swing 日期选择器 支持点击文本框选
- 多级反馈队列进程调度Swing实现源代码
- SWING 假期管理系统
- 读取Excel表格里的内容并显示在Swing界
- 车票管理系统含swing源码
- swing+jdbc学生选课系统
- PTV热力学计算助手
- 宠物管理系统+SWING
- swing 考试系统
- swing+servlet网络编程
评论
共有 条评论