资源简介
本功能设计实现了局域网聊天系统的群聊以及私聊部分,群聊部分借鉴《Qt及Qt Quick开发实战精解》中的实例,添加了私聊功能,适合初学者学习,博客链接:https://blog.csdn.net/hfuu1504011020/article/details/81907478

代码片段和文件信息
#include “chat.h“
#include “ui_chat.h“
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
int Chat::num1 =0;
int Chat ::num2 = 0;
/*Chat::Chat(QWidget *parent) :
QDialog(parent)
ui(new Ui::Chat)
server(nullptr)
xchat(nullptr)
is_opend(false)
{
ui->setupUi(this);
}
*/
Chat::~Chat()
{
is_opend = false;
delete ui;
}
Chat::Chat(QString pasvusername QString pasvuserip):
xpasusername(pasvusername)
xpasuserip(pasvuserip)
is_opend(false)
server(nullptr)
xchat(nullptr)
used(false)
ui(new Ui::Chat)
{
ui->setupUi(this);
ui->messageTextEdit->setFocusPolicy(Qt::StrongFocus);
ui->textBrowser->setFocusPolicy(Qt::NoFocus);
ui->messageTextEdit->setFocus();
ui->messageTextEdit->installEventFilter(this);
a = 0;
// is_opend = false;
ui->label->setText(tr(“与%1私聊中 对方的IP:%2“).arg(xpasusername)
.arg(xpasuserip));
xchat = new QUdpSocket(this);
xport = 45456;
xchat->bind( QHostAddress(getIp())xport);
connect(xchatSIGNAL(readyRead())
thisSLOT(processPendinDatagrams()));
server = new TcpServer(this);
connect(server SIGNAL(sendFileName(QString))
thisSLOT(getFileName(QString)));
}
void Chat::sendMessage(messageType type QString serverAddress)
{
QByteArray data;
QDataStream out(&dataQIODevice::WriteOnly);
QString localHostName = QHostInfo::localHostName();
QString address = getIp();
out < switch (type) {
case LeftParticipant:
break;
case Message:
{
used = false;
if(ui->messageTextEdit->toPlainText() ==““)
{
QMessageBox::warning(0tr(“警告“)tr(“发送内容不能为空“)QMessageBox::Ok);
return ;
}
else
{
ui->label->setText(tr(“与%1私聊中 对方的IP:%2“).arg(xpasusername)
.arg(xpasuserip));
message = getMessage();
out << address << message;
// out << address < ui->textBrowser->verticalScrollBar()->setValue(ui->textBrowser->verticalScrollBar()->maximum());
}
break;
}
case FileName:
{
QString clientAddresss = xpasuserip;
out < break;
}
case Refuse:
{
out << serverAddress ;
break;
}
default:
break;
}
qDebug() <<“num1:“ << ++num1 << “ipAddress:“ << address<<“\n“<<“文件“< xchat->writeDatagram(datadata.length()
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-08-21 09:16 chatPrivate\
文件 861 2009-10-16 18:37 chatPrivate\bold.png
文件 12285 2018-08-20 16:41 chatPrivate\chat.cpp
文件 2127 2018-08-20 15:29 chatPrivate\chat.h
文件 7606 2018-08-18 09:59 chatPrivate\chat.ui
文件 1291 2018-08-20 17:00 chatPrivate\chatPrivate.pro
文件 23787 2018-08-21 09:16 chatPrivate\chatPrivate.pro.user
文件 1028 2009-10-16 18:37 chatPrivate\clear.png
文件 960 2009-10-16 18:37 chatPrivate\color.png
文件 304 2018-08-20 16:49 chatPrivate\images.qrc
文件 992 2009-10-16 18:37 chatPrivate\italic.png
文件 351 2018-08-20 16:52 chatPrivate\main.cpp
文件 42 2018-08-21 09:11 chatPrivate\myapp.rc
文件 161862 2018-08-20 16:48 chatPrivate\myicon.ico
文件 1172 2009-10-16 18:37 chatPrivate\save.png
文件 758 2009-09-22 13:43 chatPrivate\send.png
文件 3720 2018-08-19 18:54 chatPrivate\tcpclient.cpp
文件 1037 2018-08-19 18:55 chatPrivate\tcpclient.h
文件 1639 2018-08-15 07:20 chatPrivate\tcpclient.ui
文件 5060 2018-08-19 19:04 chatPrivate\tcpserver.cpp
文件 1123 2018-08-18 04:58 chatPrivate\tcpserver.h
文件 1950 2018-08-15 07:20 chatPrivate\tcpserver.ui
文件 838 2009-10-16 18:37 chatPrivate\under.png
文件 14395 2018-08-20 13:11 chatPrivate\widget.cpp
文件 2035 2018-08-19 13:39 chatPrivate\widget.h
文件 8840 2018-08-15 00:42 chatPrivate\widget.ui
- 上一篇:OA考勤与excel手工考勤自动合并样例
- 下一篇:PyCharm主题配色方案
相关资源
- 酒店管理系统基于Qt Creator5)
- vtk QT做的三维地质可视化系统2of2
- Qt局域网聊天软件
- Qt Creator opengl实现四元数鼠标控制轨迹
- QT局域网聊天系统(基于QT5.修改过)
- qt-电子点菜系统
- C 餐厅叫号系统(QT平)
- QT 实现文件下载
- qt图像处理
- QT,JPEG解码源代码(已完成)
- Qt 播放音频文件
- Qt 读取16进制的data文件
- MQTT+串口(usart)透传
- 易语言QQTEA算法源码
- VC工程转Qt工程文件的工具
- MQTT推送Demo
- 基于Linux、QT的视频监控系统的设计与
- Qt 百度地图 定位
- QT酷炫界面开发指南《QmlBook》
- Ubuntu下操作Excel,qt代码
- Qt图片浏览器 --基于Qt的Graphics View f
- qtnribbon2破解
- Qt软件开发 完整项目代码
- MQTT_3.1protocol_Specific中文版
- 在QT中使用RTP进行视频的采集和传输
- Mini6410 Qt4和Qtopia编程开发指南
- Qt实现Code39条形码
- qt_ffmpeg_mp4_export_and_import.zip
- QT5.5入门与项目实战
- Huffman Compress 霍夫曼编码 压缩 解压缩
评论
共有 条评论