资源简介
Qt实现微信气泡聊天效果,这里只是做了一个Demo,可以发送消息,消息撤回使用QWebChannl HTML与Qt通信,取出撤回的消息序号,从而撤回消息。https://blog.csdn.net/qq_25532071/article/details/88427192文章中有效果及详细介绍
代码片段和文件信息
#include “cos_groupchat.h“
#include
#include
#include
//#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
Cos_GroupChat::Cos_GroupChat(QWidget *parent)
: QDialog(parent) sendDivID(0) RecvDIvID(0)
{
ui.setupUi(this);
this->setMinimumWidth(250);
this->setWindowtitle(“DDLT“);
//this->setWindowIcon
//设置我方头像和对方头像
Myhead = ““;
QString strHead = QString(“qrc:/resource/otherHead.png“);
otherhead = QString(““).arg(strHead);
m_pView = new QWebEngineView(this);
m_pView->installEventFilter(this);
ui.m_textEdit_send->installEventFilter(this);
//m_pView->setContextMenuPolicy(Qt::NoContextMenu); //禁用右击
//m_pView->setstyleSheet(“background-color:#ffffff“);
QWebEnginePage *pPage = new QWebEnginePage(this);
m_pView->setPage(pPage);
Document* m_content = new Document(this);
QWebChannel *channel = new QWebChannel(this);
channel->registerobject(QStringLiteral(“contentObj“) m_content);
pPage->setWebChannel(channel);
//加载HTML模板
m_pView->page()->load(QUrl(“qrc:/resource/messageBox.html“));
QVBoxLayout *pMai = new QVBoxLayout;
pMai->addWidget(m_pView);
pMai->setContentsMargins(0 0 0 0);
ui.m_pframe->setLayout(pMai);
pManager = new Cos_TcpConnectManger;
QNetworkProxyFactory::setUseSystemConfiguration(false);
connect(ui.m_Btn_Send SIGNAL(clicked()) this SLOT(slot_lineEditReturnpressed()));
connect(pManager SIGNAL(sig_receiveMessage(QString )) this SLOT(slot_receiveMessage(QString)));
connect(m_content SIGNAL(sig_deleteMesssage(QString )) this SLOT(slot_receiveMessage(QString)));
//接收到服务器发送过的消息连接槽
}
Cos_GroupChat::~Cos_GroupChat()
{
}
void Cos_GroupChat::ppppp()
{
QString pHtml = pTextEdit1->toPlainText();
QString html = QString(“appendMyMessage(%1 ‘%2‘);scrollBottom();“).arg(“‘you‘“).arg(pHtml);
m_pView->page()->runjavascript(html);
}
void Cos_GroupChat::ppppp1()
{
QString pHtml = pTextEdit2->toPlainText();
qDebug() << pHtml;
QString html = QString(“appendOtherMessage(%1 ‘%2‘);scrollBottom();“).arg(“‘me‘“).arg(pHtml);
m_pView->page()->runjavascript(html);
}
bool Cos_GroupChat::eventFilter(Qobject *watched QEvent *event)
{
if (watched == m_pView)
{
QWheelEvent *p = dynamic_cast(event);
if (p)
{
return QWidget::eventFilter(watched event);
}
}
else if (watched == ui.m_textEdit_send)
{
if (event->type() == QEvent::KeyPress) {
QKeyEve
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1026 2019-02-12 11:01 Cos_GroupChat\.qmake.stash
文件 1571 2015-08-04 23:07 Cos_GroupChat\00393_24x24x8BPP_.gif
文件 6783 2016-09-02 14:04 Cos_GroupChat\1.jpg
文件 7258 2019-03-12 19:05 Cos_GroupChat\cos_groupchat.cpp
文件 1466 2019-02-15 17:40 Cos_GroupChat\cos_groupchat.h
文件 1310 2019-02-15 17:35 Cos_GroupChat\Cos_GroupChat.pro
文件 23850 2019-02-18 16:20 Cos_GroupChat\Cos_GroupChat.pro.user
文件 3954 2019-02-15 17:34 Cos_GroupChat\cos_groupchat.ui
文件 241 2019-02-12 11:32 Cos_GroupChat\cos_groupresouce.qrc
文件 2013 2019-02-12 16:51 Cos_GroupChat\cos_tcpconnectmanger.cpp
文件 956 2019-02-12 14:47 Cos_GroupChat\cos_tcpconnectmanger.h
文件 177152 2019-03-12 19:10 Cos_GroupChat\debug\Cos_GroupChat.exe
文件 2084976 2019-03-12 19:10 Cos_GroupChat\debug\Cos_GroupChat.ilk
文件 357869 2019-03-12 19:07 Cos_GroupChat\debug\cos_groupchat.obj
文件 3379200 2019-03-12 19:10 Cos_GroupChat\debug\Cos_GroupChat.pdb
文件 2437120 2019-03-12 19:10 Cos_GroupChat\debug\Cos_GroupChat.vc.pdb
文件 106676 2019-02-18 10:15 Cos_GroupChat\debug\cos_tcpconnectmanger.obj
文件 56324 2019-02-18 10:15 Cos_GroupChat\debug\document.obj
文件 0 2019-02-18 11:56 Cos_GroupChat\debug\log.txt
文件 74423 2019-02-18 10:15 Cos_GroupChat\debug\main.obj
文件 6276 2019-02-18 10:15 Cos_GroupChat\debug\moc_cos_groupchat.cpp
文件 143636 2019-02-18 10:15 Cos_GroupChat\debug\moc_cos_groupchat.obj
文件 7232 2019-02-18 10:15 Cos_GroupChat\debug\moc_cos_tcpconnectmanger.cpp
文件 78549 2019-02-18 10:15 Cos_GroupChat\debug\moc_cos_tcpconnectmanger.obj
文件 7096 2019-02-18 10:15 Cos_GroupChat\debug\moc_document.cpp
文件 60614 2019-02-18 10:15 Cos_GroupChat\debug\moc_document.obj
文件 260 2019-02-18 10:15 Cos_GroupChat\debug\moc_predefs.h
文件 3485 2019-02-18 10:15 Cos_GroupChat\debug\moc_testdialog.cpp
文件 66757 2019-02-18 10:15 Cos_GroupChat\debug\moc_testdialog.obj
文件 102912 2019-03-12 19:10 Cos_GroupChat\debug\qrc_cos_groupresouce.cpp
............此处省略23个文件信息
相关资源
- QT实现浏览器+百度地图
- Qt5使用百度地图test
- QT 自定义无边框窗体,支持边缘拖拽
- Qt5-嵌入百度地图
- Qt-Charts动态显示多条折线电压值(实
- esp8266继电器配网+断电保存+可重复配
- mupdf-qt已编译库文件
- STM32F103+SIM800C 移植MQTT 连接阿里云服务
- QT5版简易网络调试助手附带编译好的
- 封装QTableView,支持冻结列,绘制表头
- Qt实现二维码扫描器
- Qt局域网聊天工具
- qt指纹采集测试程序
- Qt实现浏览器
- qt调用百度地图与js通信源码
- Qt调用百度地图APImap_APP.7z
- Cpp/Qt/Opencv 识别简单手势剪刀石头布
- Qt加载HTML/js,实现相互调用的小程序
- QT简单的计时器程序
- libmodbus 在 Windows平台 Qt5 MinGW 中的测试
- QT5-电压电阻表盘源码可以自定义阴影
- QT-电压电阻表盘源码可以自定义阴影
- qt写word两种方式代码
- QTableWidget分页代码
- QT编写的邮件发送工具
- Qt写的实用闹钟,可以自己选择音乐
- Echart.rar
- QWidget 绘制的聊天气泡效果
- html+css仿微信聊天框架
- Qt+OpenGL做的蕾达显示程序
评论
共有 条评论