当前位置: 首页 > news >正文

wxWidgets 3.2.11和3.3.3发布(发布日期:2026年7月7日)

在稳定的3.2和最新的3.3系列中同时发布似乎在上一次工作得很好,因此我们今天通过最新稳定的3.2.11版本和wxWidgets的最新开发3.3.3版本再次这样做。如前所述,3.3.3包含3.2.11的所有更改以及3.2系列中没有的其他改进,例如对wxMSW中暗模式支持的进一步改进,包括为消息对话框实现它,并支持在运行时在亮模式和暗模式之间切换。

这两个版本都可以从GitHub下载,请遵循这些链接下载具有库源和文档的存档,以及所选Windows编译器(如Microsoft Visual C++和MinGW-w64)的二进制文件:3.2.11版本和3.3.3版本。在线文档也已更新,可以分别在3.2.11文档主页和3.3.3中访问。

如果您是wxWidgets的新手,您可能会发现安装指南是一个很好的起点。如果要从以前的版本升级到3.3.3,请确保检查更改日志,特别是其中的不兼容更改部分。

自早期版本以来的更改

3.2.11包括针对可能的安全问题的异常大量的错误修复,这可能是由于越来越多地使用LLM来查找它们,也有助于添加额外的模糊器。如果在不受信任的上下文中使用下面提到的任何函数或类,强烈建议升级到此版本:

  • 修复wxBMPHandler中的多个缓冲区溢出:加载具有无效RLE数据(#26496)的格式错误的BMP文件时,8bpp BMP的调色板无效(#26438),无效的4bpp BMPs(#26511)。
  • 修复wxXPMDecorder(#26442)中的多个缓冲区溢出,包括解析具有未终止引号(#26499)或无效宽度(#26519)的XPM文件时。
  • 修复wxGIFHandler中的多个问题:拒绝更多无效GIF并在不泄漏内存的情况下执行(#26501),修复解码无效GIF时的缓冲区溢出(#26521,#26524)。
  • 修复wxTarInputStream中的缓冲区溢出(#26530)。
  • 修复wxFileType::ExpandCommand()(#26531)中读取的越界。
  • 修复wxVsnprintf()中的缓冲区溢出(#26522)。
  • 修复wxRegEx::Replace()(#26541)中读取的越界。
  • 修复wxUString中读取的越界(#26548)。
  • 修复无效格式(#26543)的wxDateTime::Format()处理。
  • 修复wxGethostby中的缓冲区溢出{addr,name}_r()(#26528)和wxGethostbyxxx_r()(#26553)。
  • 修复wxIFFDecorder中的多个缓冲区溢出:越界调色板写入(#26440)、坏BMHD块上的越界写入(#2497)和其他(#26505,#26518)。
  • 修复wxPCXHandler中读取的越界(#26441)。
  • 修复读取帧计数无效的ANI图像(#26492)。
  • 修复具有无效颜色映射的TGA文件中的写入溢出(#26493)。
  • 修复wxSound中的多个缓冲区溢出(#26506,#26525)。
  • 修复读取ZIP64文件中太短的额外字段(#26507)。
  • 修复在wxMBConvUTF7::ToWChar()(#26517)中读取的越界表。
  • 修复读取损坏的消息目录时的缓冲区溢出(#26513)。
  • 修复wxHTML中太大表的缓冲区溢出(#26554)。


其他与安全无关的错误修复包括:

  • 在Unix(#26466)下修复2038年之后的日期的wxCondition和wxSemaphore::WaitTimeout()的行为。
  • 固定滚动窗口中的wxCaret位置(#26282)。
  • 正确加载某些位图:32bpp的位图没有有效的alpha(#24219),使用delta RLE位图背景色的位图(#23599),以及使用BI_BITFIELDS模式的位图(#23601)。
  • 添加wxGrid::GetFrozen{Row,Col}LabelWindow()(#26617)。
  • 修复定义wxNO_IMPLICIT_WXSTRING_ENCODING时wxPropertyGrid宏的编译(#26651)。
  • wxGTK特定的修复程序:
    • 修复剪贴板管理器运行时的复制/粘贴(#26265)。
    • 使用wxNotebook中基于EGL的wxGLCanvas修复崩溃(#26340)。
    • 修复连接GSpell时可能发生的wxTextCtrl崩溃(#26464)。
    • 修复绘制非常大的位图(#25656)。
    • 修复wxDataViewChoiceRenderer中的内存泄漏。
    • 修复将EGL与X11一起使用时的资源泄漏(#26341)。
    • 用wxBORDER_NONE(#26357)修复在Wayland下显示标题栏的问题。
    • 删除“选择器”控件中错误的最大文本长度限制(#26314)。
    • 修复由wxDC::DrawLine()(#26449)绘制的虚线的外观。
    • 在设置初始客户端大小时修复不可调整大小的TLW大小(#26480)。
  • wxMSW特定修复程序:
    • 使用RTL布局(#26266)时修复wxBufferedPaintDC。
  • wxOSX特定的修复程序:
    • 修复wxOSX中销毁wxFileSystemWatcher后的崩溃(#26658)。
    • 修复wxOSX(#26411)中wxFont::SetNativeFontInfo()中可能发生的崩溃。

3.3.3版本包括上面3.2.11中的所有修复以及一些额外的改进:

  • 为wxMSW(#26570)中的wxMessageBox和其他对话框添加暗模式支持。
  • 支持在wxMSW(#26516)中的亮/暗模式之间切换。
  • 将手写笔事件支持添加到wxMSW(#26223)。
  • 向wxSVGFileDC添加辅助功能支持(#26379)。
  • 添加wxWebView::Print()和PrintToPDF()(#26239,#26583)。
  • 改善高DPI(#26117,#26409)中的wxRibbon外观。
  • 改进wxGTK中的wxStaticText标签换行。
  • 添加wxMoveToTrash()函数(#26256)。
  • 在wxMSW(#26657)中使用Direct2D启用绘图颜色表情符号。
  • 为wxString(#26306)实现C++20<=>运算符。
  • 将对专用字体的支持添加到wxQt(#26403)。
  • 在macOS 27(#26578)下支持建筑物wxOSX。


最后,一些不适用于稳定分支的错误修复:

  • 提高wxTarInputStream鲁棒性(#26607)。
  • 将截断的读取视为wxDataInputStream(#26600)中的错误。
  • 改善wxMSW(#26075)中DPI更改的wxAUI行为。
  • 修复在wxGTK中的高DPI中使用wxImageList时的回归(#26349)。
  • 在wxMSW(#26270)中的屏幕读取器中使用wxCheckBox标签修复回归。
  • 使用wxMSW(#26287)中3.3.2中的wxPD_CAN_SKIP修复回归。
  • 修复macOS 26(#26374)下的wxDataViewCtrl图标渲染。
  • 修复任务控制中留下幻影的wxOSX wxOverlay(#26380)。


反馈


请通过以下任何渠道让我们了解您对此版本的体验:

  • Mailing lists
  • Discussion forums
  • #wxwidgets IRC Channel
  • Stack Overflow

感谢本版本的所有贡献者,我们希望您将喜欢与它一起工作!


wxWidgets 3.2.11 and 3.3.3 Released - wxWidgets

http://www.jsqmd.com/news/1220756/

相关文章:

  • Redis 三大架构深度解析:主从、哨兵、Cluster 演进、区别与选型
  • 软件开发技术交流平台
  • DXPopover实现原理深度剖析:UIKit框架下的弹窗设计与架构
  • VS配置claude code
  • ThinkingCap-Qwen3.6-27B-mlx-6Bit与原版模型对比:量化后的效率与质量平衡术
  • Replication Manager完全指南:MySQL/MariaDB高可用性解决方案入门
  • 猫抓插件:5个创新功能重塑网页媒体资源管理体验
  • 解锁社区资源:如何自我开发和安装属于自己的Open Claw技能包
  • PCIe XDMA IP核实战:基于Xilinx-FPGA-PCIe-XDMA-Tutorial的BRAM读写工程搭建
  • 设计系统 AGI 化的前置工作:规则的形式化表达与可计算约束
  • 如何快速入门Ptex:5分钟搭建生产级纹理映射环境
  • 【ComfyUI高效节点实战指南】:20年AI工作流专家亲授12个必用节点优化技巧
  • linux的vdir命令详解
  • 电话录音秒变文字稿:20年CTO亲授AI语音转文字避坑指南
  • Kimera-Semantics ROS节点详解:从launch文件到参数配置的最佳实践
  • 终极Windows权限管理指南:5分钟掌握NSudo系统提权神器
  • AI 导出鸭实操教程:Grok 的公式怎么复制到 word 高效无乱码
  • DeepSeek 输出的内容粘贴有符号好烦,AI 导出鸭轻松清理杂乱符号规范排版
  • 内置工具开发_builtin-tool
  • CSS 自定义高亮 API(Highlight API)实现代码语法高亮的纯前端方案
  • 直播 AI 实时美颜与特效的端上推理优化:从 1080p@30fps 到移动端 720p@60fps 的工程实践
  • 为什么选择librw?重构RenderWare引擎的5大技术优势
  • Larq生态系统详解:Zoo预训练模型与Compute Engine部署工具链
  • 鸿蒙开发入门:以 Text 组件为例,掌握内置组件用法
  • 从配置到部署:mlx-community/gemma-4-31b-it-5bit模型参数全解析
  • 【苏州吴江】吴江基坑降水井施工哪家专业?工地降水靠谱队伍联系方式,吴江打井推荐 - 瑞溪泉水利
  • 把 Microsoft MarkItDown 做成本地文档转换 API:PDF/Office 转 Markdown 后,用 cpolar 接收远程上传
  • 文心做 excel 表格,AI 导出鸭助力高效文档导出
  • AI数字人直播话术优化实战手册(实时情绪识别+动态脚本生成)
  • 【网络基础系列】07手撕“子网划分”软考真题,终于搞懂 AWS VPC 怎么建了!