全新暗黑版微信来了,腾讯使用QT重构!

Qt实现仿微信在线聊天工具(服务器、客户端)V1_ 03 上一篇实现了窗口移动以及最大化最小化,本章将要实现与服务器的连接。 阅读详情
AI摘要

微信4.0.0测试版采用QT做UI框架,安装后可与现有版本共存,界面更简洁,支持文字大小设置和暗黑模式。在软件Electron化趋势下,微信此举是逆行者。此前Windows版微信用Duilib库无法跨平台,此次切换体现技术追求,也因跨平台需求紧迫。还探讨了Electron和QT哪个跨平台方案更好。

前几天逛知乎,发现了一个提问:

图片

微信居然换QT框架了!作为一名老C++er狂喜啊,赶紧去研究了一下。

在微信的官网,已经放出了4.0.0的测试版本供大家下载安装使用:

图片

这个测试版大家可以放心安装,它不会覆盖你电脑上现有的微信,而是可以与现有稳定版本共存。

图片

首先我发现了一个细节,这个新版本的微信,安装后不管是文件夹还是可执行程序的命名上,都由原来的WeChat改为了Weixin:

图片

整个界面布局和之前版本大体差不多,但UI细节看起来更加简洁了,而且还支持了界面上文字的大小设置:

图片

另外还有非常重要的一个功能是,新版微信有暗黑模式了:

图片

要说4.0技术层面最大的亮点,那就是采用了QT做了UI框架了!

这是用Spy++看到的微信窗口类名:

图片

用IDA打开,可以看到QT的很多信息:

图片

在各种软件都在Electron化的今天,微信此举可谓洪流中的逆行者!就连隔壁QQ都开始用Electron了!

大家有没有发现,现在自己的电脑配置越来越高,动不动就十几个G内存,但性能好像跟以前并没有太大的变化。要知道,十几年前大多数个人PC电脑,内存不过2G、4G,有8个G都算高配了。

这里面很重要的一个原因,就是越来越多的软件Electron化!它们的UI界面都是前端JS开发出来的。大家现在看到的很多软件,像某网盘,某下载软件等等,都给你塞了一个浏览器内核在里面,这样一加起来,你的电脑上可能都有十几个甚至几十个浏览器内核了,这么多一起跑,这不慢就怪了。

但这也无可厚非,如果不用Electron这样的技术,很难做到跨平台,公司里就要维持Mac、Windows、Linux三个平台的开发团队,成本自然很高。而且Native开发本身难度就比Web开发大得多,连小马哥都曾经坦言Windows开发又麻烦又没人用:

图片

但有了Electron后,只需要招一波人,套个浏览器的壳,就能做到跨平台,至于性能,慢点就慢点吧。

据网络上的信息,Windows版本的微信之前采用的Duilib这个库,QQ也曾经用过这个库,但麻烦就在于它没法跨平台,Linux版本就常年摆烂中。

从这一次切换到QT来看,微信团队还是有点技术追求的,不甘心随大流。腾讯本身也是国内做C++开发的大厂,也拥有这样强大的技术实力去做这件事。加之信创大势所趋,Linux版本未来也会越来越多,跨平台也越来越紧迫了。

对于跨平台的技术方案,你觉得Electron和QT哪个更好,欢迎留言交流。

Qt 仿微信PC客户端 纯UI pyqt pyside 仿微信PC聊天页面,纯UI页面。 阅读详情

相关推荐

别再只调API了!手把手教你用Qt解析微信OAuth2.0授权码(code)的完整链路

本文详细介绍了如何使用Qt构建微信OAuth2.0授权系统,从协议原理到代码实现,完整拆解微信授权流程。通过Qt WebEngine模块集成、授权码捕获、网络请求管理等技术,帮助开发者安全高效地实现第三方授权登录功能,提升桌面应用的用户体验。

weixin_42530458的博客 281

Qt实现微信聊天(windows和linux上都可运行)

当服务器启动并读取配置文件完成初始化操作后,就会运行等待连接模块,这个模块会创建套接字,然后进入等待连接的暂停状态。接下来,当客户端发起连接时,这个模块会恢复运行并接受连接,然后启动客户端通信模块,并移交完成连接的套接字。接下来,客户端通信模块就会使用已连接的套接字与客户端进行通讯,通信结束后,这个模块就退出了。对于即时通信应用来说,实时性是非常重要的,而UDP协议正是为实时性需求而设计的。对于社交网络应用来说,数据的可靠性和顺序性是非常重要的,因此微信选择使用TCP协议。、多对多的交互通信。

qq_43470534的博客 3429

用Qt实现一个仿微信的聊天界面

接下来,我们需要在左侧的QScrollArea中添加一个QWidget,该QWidget用于存储所有的消息记录。为了更好地表现出消息列表的样式,我们可以将QWidget的背景色设置为白色,并且将其边框设置为稍微厚一点。为了能够更好地区分不同用户的消息,我们可以使用不同的头像和姓名。右侧的QScrollArea用于输入消息,我们可以使用QTextEdit控件实现这个功能。为了使整个窗口更加美观,我们可以设置QSplitter的边框和背景颜色,以及调整两个QScrollArea的大小。

ByteBuster的博客 2221

Qt实现仿真微信程序

微信作为通信交流工具已经成为生活中不可或缺的一环,通过微信可以完成网络中随时随地的聊天,文件传输,朋友圈等功能,本文将通过Qt实现仿真微信程序,包含登录,好友列表,聊天,文件传输等功能。微信仿真通过UDP和TCP两种网络传输方式,分别使用聊天信息传输和文件信息的传输,是两种协议的不同运用,后续的改善可以通过MVC架构,通过建设Server进行信息的接收,通过接收的信息调用不同的方法,并通过Server转发处理后的数据,做到客户端只进行信号发送和数据接收,而在服务器端进行信息的处理。

sumfortp的博客 2184

Qt Quick 实现高仿微信聊天列表和好友列表

在 FriendsModel 的构造函数中,我们设置了三个角色名称,分别对应于 Friend 类的三个属性。在本文中,我们将使用 Qt Quick 实现一个高仿微信好友列表和聊天列表。在上面的代码中,我们创建了一个 ChatModel 对象 chatModel,并将其设置为 ListView 的数据模型。在上面的代码中,我们通过 qmlRegisterType() 函数将 Friend 和 FriendsModel 类注册到 QML 中。接下来,我们将介绍如何实现一个高仿微信聊天列表。

. 1085

Wechat.rar_QT 微信_QT微信界面_qml 微信_qml 界面_wechat qt

QT quick下机遇微信界面写的Demo。主要用QML写的界面

微信改用QT框架重构,暗黑模式与性能优化体验

一个典型Electron应用可能携带超过100MB的Chromium内核,而QT作为原生框架,内存占用通常能控制在30MB以内。对于想快速验证跨平台方案的开发者,这种无需搭建环境的体验确实节省了大量时间。特别是多开窗口时,CPU占用率波动更加平稳,这验证了Native框架在复杂场景下的优势。QT的Linux兼容性为信创环境铺路,相较Duilib只能用于Windows,新框架可快速适配统信UOS等国产系统。实测在4K屏幕上,文字渲染清晰度比旧版提升明显,字体大小调节功能也弥补了高分屏适配的痛点。

QuartzLynx65的博客 501

ali140滑块

ali 140滑块采用补环境的方式进行逆向,需要的文件主要为这两个,其中collina.js是最主要的环境校验和参数加密的逻辑,这两个文件放本地进行补环境。然后挂上代理,先保证能够正常运行代码,补了些许后能够正常运行了,我们打印最主要的加密函数看看:n值就是得到:挂上代理看看鼠标事件,不管加密逻辑,关心入参即可:收集一些鼠标事件传进记录的函数。其余就是处理一些环境值,一些resetSA的逻辑就行。截图记录:

bboysteed的博客 1678

微信 PC 版 4.0:新架构,新升级

微信 PC 端 4.0 的架构升级不仅解决了旧版本存在的性能瓶颈和功能限制,更为未来开发打下了坚实基础。通过 QT + C++ 的原生架构,微信正在重新定义桌面端的交互和体验标准。可以预见,未来微信 PC 客户端将在功能丰富性、性能稳定性和用户体验方面迎来更多创新和突破。

ctips的博客 4558

【面试经验】大疆笔试-计算机视觉算法B卷

3、a=np.random.randn(3,3) b=np.random.randn(3,1) ,那么c=a*b的维度应该是:*是元素乘法或者torch.mul,@才是矩阵乘法或者torch.matmul,不会触发广播机制;8、将分辨率降低一半时,精标定内参(fx、fy、cx、cy、k1、k2、k3)焦距、光心、畸变系数将分别变成(fx、fy、cx/2、cy/2、k1、k2、k3),只能搜到光心变成一半,畸变系数不变。12、KLT算法在频闪光源、重复纹理、高速机动、环境照度低的情况下效果显著下降。

litterfinger的博客 1448

Docker网络冲突?手把手教你解决Dify社区版无法访问172.18.0.0网段的问题

本文详细解析了在部署Dify社区版时,因Docker默认网段与局域网冲突导致无法访问172.18.0.0网段的问题。通过剖析Docker网络原理,提供了修改Docker守护进程默认地址池的根治方案,并介绍了在Compose文件中指定自定义网络等备选方法,帮助用户彻底解决网络冲突,保障服务稳定运行。

p8q9r0的博客 484

Qt 微信版本 网络聊天

Qt5 仿微信聊天界面的网络通信工具,支持公网、局域网通信。

nigoole的专栏 2674

CST中PEC结构涂覆吸波材料的RCS仿真与优化

本文详细介绍了在CST Studio Suite中对PEC结构涂覆吸波材料进行RCS仿真的完整流程与优化策略。通过精确的材料参数设置、涂层厚度优化和仿真技巧,有效降低目标的雷达散射截面,提升隐身性能。文章结合实战案例,为工程师提供了一套高效的RCS仿真与优化解决方案。

c2d3e4f的博客 692

点赞!微信4.0原生国产系统版本和 Windows、 MacOS 版本同步发布,还支持龙芯、麒麟等国产芯片...

在此前的文章《国产芯片+国产操作系统打造办公系统》中,我分享了在 UOS 系统上工作的体验。尽管未提及微信,原因是微信主要定位于移动通讯软件。但在工作过程中,微信 PC 版的使用频率还挺高,比如在和外部客户、合作伙伴沟通,很多时候都是通过微信。在电脑上使用,打字,收发文件,都比在手机上方便很多。尽管 UOS 应用商店早早上线了微信,最初的版本却是基于 Wine 运行的 Windows 版,随后微信...

云水木石 2521

ios快捷指令进行钉钉打卡

首先 1、打开快捷指令 2、自动化 3、创建个人自动化-特定时间 4、添加操作-搜索“随机数” 5、最小值和最大值填充 6、添加操作-搜索“等待” 7、长按“1秒钟”,选择魔法变量,选择上一步的随机数 6、添加操作-搜索“钉钉” 7、选择钉钉-随便一个聊天窗口。 8、添加操作-搜索“等待”,这次将等待时间设为10秒 9、添加操作 “搜索天气” ,选择显示天气。 注意点: 1、此操作依赖于钉钉极速打卡,只是帮忙唤起钉钉。 2、保存自动化时有个运行前询问,务必关掉。 3、手机不能设

blaze_jack 5万+

量化回测系统实战指南:从VectorBT到自研框架的深度解析

本文深入解析量化回测系统实战,从VectorBT和Backtesting.py的对比到自研框架miniQuant的设计与优化。探讨如何平衡速度与灵活性,解决实盘适配性问题,并提供性能调优技巧和可视化分析工具,帮助开发者构建高效可靠的量化交易系统。

weixin_28308325的博客 277

微信4.0测试版本QT版本发布了可以开2个微信了

我立马就弃坑原有的了,聊天记录也能自动导入 image.png image.png QQ_1730885426125.png QQ_1730885468845.png 支持深色模式 QQ_1730885553148.png QQ_1730885698302.png 由于名称不一样开2个微信更简单了 image.png ima...

情随事迁个人博客 917

芯片测试:WAT、CP、FT

最近部门来了一个日本回来的同事,虽然他尽量用非常Poor的中文给我解释一些东西,其中还夹杂着一些英文让我很受挫,于是最近来学一下WAT中的常用的单词含义。直接去查缩写、查单词很难去记住,要把具体的东西放在具体的场景,引发知识的连接才会在脑子里留下一定的映像。感兴趣的一起来学习一下这篇不错的文章吧。注释是我查询记录,如有不妥,欢迎指出修正。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 5086

Linux 版微信正式官宣,居然选了这个 90 年代的“过气”框架

长期以来,Linux 下的微信体验一直是用户讨论的焦点,如今大家期待的原生 Linux 版本终于来了。前几天,微信上线了 Linux 客户端的下载页,提供了适用于 x86、Arm 和龙芯 LoongArch 三种架构的测试版应用下载。其中,x86 和 Arm 平台支持 deb、rpm 和 AppImage 三种包格式,而 LoongArch 平台目前仅提供 deb 版本。https://linux...

<sdffdsfsdfdfs>sfsfsfsdfsdffds</sdfsDS>Fsd 1605

【电动汽车再生制动控制技术(万字长文,图文并茂)】

电动汽车再生制动的基本原理是:通过具有可逆作用的电动机/发电机来实现电动汽车动能和电能的转化。在汽车减速或制动时,可逆电机以发电机形式工作,汽车行驶的动能带动发电机将汽车动能转化为电能并储存在储能器(蓄电池或超级电容器)中;在汽车起动或加速时,可逆电机以电动机形式工作,将储存在储能器中的电能转化为机械能给汽车。这对于改善汽车的能量利用效率,延长电动汽车的行驶距离是至关重要的。

优快云-新能源汽车研发测试专业博主 1578

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

<Qt综合实例>:微信客户端程序出现问题及解决方案

本项目来自《Qt 5开发及实例》一书中【综合实例】微信客户端程序。

m0_57300975的博客 717

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

电脑软件:PC端微信4.0内测版功能一览

本次版本更新后,微信的界面、图标、字体效果看起来更加美观。软件的安装速度非常快,不到一分钟就可以安装成功。,不过没有了设置文件下载路径的设置,另外这次更新可以设置三种。3.3 文件管理功能优化。3.2 联系人界面优化。3.1 UI界面优化。

IT技术分享社区 2098

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

微信4.0测试版:开启通讯新时代,深夜晚风中的温暖怀抱

在深色模式下,整个界面呈现纯黑色背景,包括朋友圈、内置浏览器等界面都完美适配,为你带来更加舒适的夜间使用体验。这款全新版本不仅实现了大版本号的更新,更带来了众多令人期待的新特性,让我们的通讯体验更加便捷、舒适。这一功能的加入,让“摸鱼”变得更加无痛,也让阅读变得更加生动。同时,新版微信的设计风格更加时尚动感,主界面及其他可见的边框都采用了圆角设计,这一细节的改变让整个应用看起来更加柔和、亲切。电脑端微信也同步了手机端的服务号折叠功能,通过这一变化,用户可以更加方便地管理订阅的服务号,让界面更加整洁有序。

Tina666_的博客 961

Qt快速实现微信聊天界面

【代码】Qt快速实现微信聊天界面。

kangjunfei的博客 278

iWeChat:重构微信,开源的力量

iWeChat:重构微信,开源的力量 iWeChat 从 0 开始解刨一个 App,以微信为例 项目地址: https://gitcode.com/gh_mirrors/iw/iWeChat 是一个基于微信官...

gitblog_00090的博客 491
上一篇: 你们骂Linus都没骂到点上
下一篇: 钉子户绷不住了,Win 10正式改为「付费续命」模式
IT界那些事儿
博客等级 码龄6年 2万+粉丝 22原创
评论 15
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值