会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
xhubobo
博客园
首页
新随笔
联系
订阅
管理
2025年10月12日
WPF上位机入门教程
摘要: WPF上位机入门教程 顾名思义,是一个WPF上位机入门的教程,包含WPF基本控件使用方法、控件库、MVVM框架、IOC框架、日志、XML、串口、Modbus、PLC、SocketServer、SQLite、曲线绘制、文档导入导出等内容。 控件库 HandyControl MVVM框架 Prism.W
阅读全文
posted @ 2025-10-12 12:30 xhubobo
阅读(171)
评论(0)
推荐(0)
2025年9月4日
使用 FFMPEG 裁剪视频
摘要: 需求:需要将2944×1080的视频裁剪出左侧1920×1080的部分。 要使用ffmpeg将2944×1080的视频裁剪出左侧1920×1080的部分,你可以使用ffmpeg的裁剪滤镜(crop)。 基本命令格式如下: ffmpeg -i input.mp4 -vf "crop=1920:1080
阅读全文
posted @ 2025-09-04 09:46 xhubobo
阅读(107)
评论(0)
推荐(0)
2025年8月28日
C++ Lambda 表达式中的参数引用
摘要: Lambda 表达式是 C++11 引入的强大特性,它允许我们定义匿名函数对象。在 lambda 表达式中,参数的引用方式与普通函数类似,但有一些额外的捕获机制需要注意。 1. Lambda 表达式的基本语法 [capture](parameters) -> return_type { // 函数体
阅读全文
posted @ 2025-08-28 09:07 xhubobo
阅读(49)
评论(0)
推荐(0)
2025年7月14日
Qt实现线程封装
摘要: Qt实现线程封装 本文使用 QObject::moveToThread 方式实现Qt中的线程封装,适用于频繁与主线程通信的场景。 1 线程封装 1.1 工作者对象头文件(AsyncWorker.h) #ifndef ASYNCWORKER_H #define ASYNCWORKER_H #inclu
阅读全文
posted @ 2025-07-14 18:11 xhubobo
阅读(25)
评论(0)
推荐(0)
2025年7月9日
Qt实现简单事件总线
摘要: Qt实现简单事件总线 事件总线(Event Bus)是一种解耦组件通信的设计模式,它允许不同对象之间通过事件进行通信而无需直接引用对方。 事件通常是自定义类型,需要在main.cpp中注册自定义元类型 //注册自定义元类型 qRegisterMetaType<KeyPressedEvent>("Ke
阅读全文
posted @ 2025-07-09 13:13 xhubobo
阅读(86)
评论(0)
推荐(0)
2025年7月7日
C++实现服务容器及服务管理类
摘要: 本文实现对单例服务的管理。 服务容器类实现功能: 注册单例类型(默认构造函数); 注册单例类型(接口及实现类,默认构造函数); 注册单例类型(带自定义工厂函数); 获取单例实例。 这些方法使用std::mutex加锁。 服务管理类实现功能: 私有方法:注册单例类型、初始化服务、反初始化服务, 共有方
阅读全文
posted @ 2025-07-07 10:45 xhubobo
阅读(7)
评论(0)
推荐(0)
2025年7月5日
Qt以直接包含源码的方式引用spdlog
摘要: 在Qt项目中直接包含spdlog源码是最简单且跨平台的集成方式。以下是详细的实现步骤: 1. 下载spdlog源码 通过spdlog的GitHub仓库下载源码:v1.15.3.zip。 将v1.15.3.zip解压缩,拷贝include、src文件夹到third_party/spdlog,Qt项目结
阅读全文
posted @ 2025-07-05 21:45 xhubobo
阅读(239)
评论(0)
推荐(0)
2025年7月4日
Qt使用libvlc简单播放视频文件
摘要: 1. 下载sdk vlc sdk下载地址为http://download.videolan.org/pub/videolan/vlc/,以3.0.20为例,下载文件为vlc-3.0.20-win32.7z。 需要注意的是,需要下载.7z文件,.zip文件中是没有sdk文件夹的。 将vlc-3.0.2
阅读全文
posted @ 2025-07-04 09:46 xhubobo
阅读(343)
评论(0)
推荐(0)
2025年2月25日
使用Qt显示摄像头图像
摘要: 1、在*.pro文件中添加多媒体模块 QT += multimedia multimediawidgets 2、使用QCamera`和`QCameraViewfinder实现捕捉和显示摄像头图像 2.1 头文件mainwindow.h #ifndef MAINWINDOW_H #define MAI
阅读全文
posted @ 2025-02-25 17:35 xhubobo
阅读(222)
评论(0)
推荐(0)
2025年2月19日
WPF中DataGrid实现行高自适应
摘要: 在 WPF 中,DataGrid 默认情况下行高是固定的。如果要实现 DataGrid 的行高自适应(根据行中内容动态调整行高),可以通过 LayoutUpdated 事件实现。 <Grid Margin="15,10"> <Grid.RowDefinitions> <RowDefinition H
阅读全文
posted @ 2025-02-19 11:41 xhubobo
阅读(445)
评论(0)
推荐(1)
解决WPF启用隐式全局引用后无法发布为x64程序的问题
摘要: 在 .NET 6 和更高版本中,C# 引入了一个新功能叫作 "global using directives",它允许我们在一个地方定义全局可用的 using 指令,而不必在每个文件中重复。然而,有时候我们可能希望在某些文件中禁用特定的全局 using 指令。 我在基于 .Net 8 的 WPF 项
阅读全文
posted @ 2025-02-19 11:20 xhubobo
阅读(71)
评论(0)
推荐(0)
2025年1月21日
Prism.WPF实现多个窗口区域导航
摘要: 1、问题场景 WPF使用Prism.WPF、Prism.Unity组件之后,使用IOC方法创建主窗口(MainWindow): protected override Window CreateShell() { return Container.Resolve<MainWindow>(); } 在主
阅读全文
posted @ 2025-01-21 08:59 xhubobo
阅读(338)
评论(0)
推荐(1)
2024年11月11日
Qt构建与解析Json示例
摘要: 本文以BeJson(https://www.bejson.com/)中的JSON在线编辑器示例内容作为学习Qt中构建、解析Json的参考方法。 1、Json文本 { "name": "BeJson", "url": "http://www.bejson.com", "page": 88, "isNo
阅读全文
posted @ 2024-11-11 23:10 xhubobo
阅读(73)
评论(0)
推荐(0)
Qt读写文件简单示例
摘要: void testReadWriteFile() { //当前程序所在文件夹 QString dirPath = QCoreApplication::applicationDirPath(); QString path = QDir::cleanPath(dirPath + QDir::separa
阅读全文
posted @ 2024-11-11 22:06 xhubobo
阅读(42)
评论(0)
推荐(0)
2024年11月7日
Qt实现Http请求
摘要: Qt中使用QNetworkAccessManager类来实现Http相关请求,本文介绍Http Get请求的简单实用方法。 下面是Qt中进行Http请求的简单步骤: 定义QNetworkAccessManager指针及槽函数 创建QNetworkAccessManager对象并关联槽函数 在类的析构
阅读全文
posted @ 2024-11-07 23:06 xhubobo
阅读(352)
评论(0)
推荐(0)
下一页
公告