自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 Winform自定义控件 —— 开关

支持过渡动画以及色彩调整的开关控件。

2024-05-16 14:00:43 435

原创 Winform / WPF 自定义控件 —— IPV4 地址输入框

仿 Window 原生风格 IPV4 地址输入框。

2023-11-14 17:41:52 924 3

原创 (四)Apache log4net™ 手册 - AOP

当我们面对一个中型或者大型 .NET / .NET Framework 项目时,想要为其添加日志系统,意味着我们需要在海量的代码中寻找合适的位置,再插入海量的日志输出语句,那么显然这是一项非常繁琐的工作。在这种情况下,使用面向切面编程(AOP)这一编程范式似乎是不错的解决方案...

2023-10-25 15:03:17 268

原创 (三)Apache log4net™ 手册 -演示

本文为演示教程,分别介绍了如何使用 Visual Studio 2022 在 .NET Framework 项目和 .NET 项目下配置并使用 Log4Net。

2023-10-09 19:29:27 460

原创 (二)Apache log4net™ 手册 - 配置

Log4Net 环境的配置完全可以通过编程完成配置;但更多时候,我们更倾向于使用一个 XML 文件(而不是 C# 代码)进行配置,因为其提供了更高的灵活性。本文将着重介绍 Log4Net 的配置文件及其包含的各种 XML 元素。

2023-10-08 16:48:17 634

原创 (一)Apache log4net™ 手册 - 介绍

Log4Net 的简单介绍,可以帮助初次接触的同学快速入门 Log4Net。

2023-10-07 16:17:33 420

原创 「C++程序设计 (面向对象进阶)」学习笔记・二

(二)「C++程序设计 (面向对象进阶)」・C++程序基础

2023-09-13 19:38:28 250

原创 应用程序分类与相关基本概念介绍

前端、后端、GUI、CLI、MVC、MVP、MVVM... 这些都是啥?

2023-09-06 17:29:47 895

原创 「C++程序设计 (面向对象进阶)」学习笔记・一

(一)「C++程序设计 (面向对象进阶)」・C++概览

2023-08-31 21:19:01 378

原创 「Qt」文件读写操作

使用 Qt 获取文件信息并进行文件读写操作。

2023-08-16 21:57:03 2254 1

原创 「Qt」常用事件介绍

本文将着手介绍 Qt 中的定时器事件和绘图事件,并在绘图事件基础上展开介绍了 Qt 中的绘图系统和绘图设备。

2023-08-04 20:43:24 699

原创 (七)「消息队列」之 RabbitMQ 发布者确认(使用 .NET 客户端)

使用 发布者确认 进行可靠发布

2023-07-19 11:14:07 1091

原创 (五)「消息队列」之 RabbitMQ 主题(使用 .NET 客户端)

基于模式(主题)接收消息

2023-07-17 21:02:40 2137

原创 (四)「消息队列」之 RabbitMQ 路由(使用 .NET 客户端)

有选择地接收消息

2023-07-17 15:08:57 2187

原创 (三)「消息队列」之 RabbitMQ 发布/订阅(使用 .NET 客户端)

同时向许多消费者发送消息

2023-07-06 09:09:01 572

原创 (二)「消息队列」之 RabbitMQ 工作队列(使用 .NET 客户端)

在工作者(worker)之间分发任务(竞争消费者模式)

2023-07-05 17:55:45 1014

原创 (六)「消息队列」之 RabbitMQ 实现 RPC 远程过程调用(使用 .NET 客户端)

请求/应答 模式示例

2023-06-30 11:27:53 1105

原创 (一)「消息队列」之 RabbitMQ 入门

想要实现两个应用程序之间的通信,我们可以借助“消息队列”技术。本文将介绍使用 C# 语言在 .NET 下实现 RabbitMQ 消息队列;当然无论是哪种编程语言或框架,要使用消息队列,都需要完成以下两个基本步骤:①下载并安装相应的消息队列服务器软件,并根据需要进行配置;②在您的应用程序代码中引入相应的消息队列客户端库,并使用客户端库提供的API来建立与消息队列服务器的连接并进行通信;这些步骤对于大多数消息队列中间件都是适用的。

2023-06-07 15:27:50 1454

原创 现代C++基本介绍

在开始学习现代C++之前,我们需要了解现代C++的基本概念。所谓现代C++,就是指 C++11 及之后的 C++,大量引入的新的语言特性和库功能使得C++感觉像一门新的语言。本文将介绍与C++相关的几个网站以及C++标准的发展历程,帮助读者初步揭开现代C++的面纱

2023-05-31 16:28:54 373

原创 在 Winform 上显示 CAD 三维模型

想要在 Winform 中展示三维模型,通常可以 嵌入 eDrawings 窗口 或者 嵌入 Unity 场景。本文主要探讨如何通过 eDrawings 提供的 API 向 Winform 中添加 EModelView ActiveX 控件以显示 CAD 三维模型。

2023-05-31 15:01:25 5533 43

原创 Snap 本地构建及安装流程

本文主要介绍如何使用 snapcraft.yaml 文件在本地构建及安装 Qt Creator ROS snap 应用程序

2023-05-30 17:54:30 4884

原创 (一)环境配置篇

本文将着手探讨从 0 到 1 配置「Qt+librviz开发」所需环境的相关内容

2023-05-10 10:08:22 434 2

原创 在 Qt Creator 上创建 ROS 项目并新建/导入 ROS 包

本文将着手探讨如何在 Qt Creator 上编辑 ROS 项目(工作空间)

2023-05-09 21:07:07 7555 79

原创 Qt 配置 ROS 开发环境

原生的 Qt 框架是无法方便快捷地开发 ROS 项目的(比如不能创建 ROS 工作空间和功能包)。为此,ROS industrial提供了一个基于 Qt Creator 的 ROS 集成开发环境插件 —— ros_qtc_plugin,可以帮助 ROS 开发人员在 Qt Creator 中更轻松地编写、调试和测试 ROS 程序。本文将着手探讨如何在 Qt Creator 上安装该插件,为 Qt 配置 ROS 开发环境

2023-05-09 19:08:11 7800 41

原创 Linux 系统(Ubuntu)下安装 Qt 环境

笔者使用的操作系统是 Ubuntu 20.04,其推荐安装的最新的 Qt 发行版本为 Qt 6.4 或 Qt 6.2 LTS;笔者更倾向于安装 LTS(长期支持)版本,所以本文将着手探讨如何在 Ubuntu 20.04.6 操作系统上安装 Qt 6.2 LTS。

2023-05-08 19:47:48 33459 72

原创 在 Ubuntu 20.04 上安装 ROS Noetic

ROS1 的官方维基已经详细罗列了ROS安装选择。本文将着手探讨如何在 Ubuntu 20.04.6 操作系统上安装 ROS1 的最后一个发行版本 —— ROS Noetic Ninjemys。

2023-05-08 11:21:35 2712

原创 在 VMware Workstation Pro 上安装 Ubuntu 操作系统

日常我们使用的计算机大多是 Windows 操作系统,如果我们面临需要在 Linux 操作系统下开发项目的场景,这个时候通常需要安装双系统或者创建 Linux 虚拟机。本文将着手探讨如何在 Windows 操作系统下通过 VMware Workstation 17 Pro 创建 Linux 虚拟机并安装 Ubuntu 20.04 操作系统。

2023-05-06 13:54:32 2911 4

原创 (零)基础概念篇

本文只针对《Qt+librviz开发》专栏系列文章中涉及到的专业名词和概念进行最基本的解释,不会做深入探讨。读者如果对某个概念感兴趣可以参考本文提供的参考链接或者自行搜索。

2023-04-24 14:22:14 1180

原创 「Qt」事件概念

Qt事件是一种描述程序内部或外部发生的动作或消息的对象,继承自QEvent类。Qt事件可以由系统产生,比如鼠标点击、键盘输入等,也可以由程序产生,比如定时器事件、重绘事件等。Qt事件的处理和传递是基于Qt事件循环的,当程序调用QApplication::exec()时,就进入了事件循环。事件循环会从系统消息队列中读取并转换为QEvent对象,然后将其分发给相应的QObject对象或其子对象。QObject对象可以通过重写event()函数或者特定的事件处理函数来处理事件,也可以通过安装事件过滤器来拦截和处理

2023-03-27 17:48:58 2445

原创 Qt自定义控件 —— 子控件与父控件的鼠标事件问题

在自定义控件中,我们发现点击自定义控件的子控件时会出现子控件响应点击而自定义控件本身不会产生任何响应的问题,本文对该问题做出了剖析并提供了解决方案

2023-03-06 11:33:58 3789 5

原创 「Qt」内存管理机制

当我们在堆区创建对象时,如果指定的父对象是 QObject 派生类,则该对象会被放置在对象树中。因此我们不必再关心对象内存的释放操作。

2023-02-28 18:15:28 743

原创 在基于Qt的应用程序中启动外部Shell脚本的两种方法

在Qt中我们可以通过多种方法启动外部程序,本文提供了两种方法用于启动外部Shell脚本,分别是使用标准库的system()方法以及使用QProcess类API。同时本文还提供了一个可以直接下载打开并编译运行的基于Qt的应用程序启动外部Shell脚本的项目demo,无需积分即可下载,欢迎小伙伴们下载参考~

2023-02-13 16:17:51 5319

原创 Qt自定义控件 —— 颜色选择组合控件

该组合控件封装了一个自定义信号,会在颜色发生改变时被发送,若要使用该自定义控件,连接相应的槽函数即可;同时,我们还可以通过相应的成员方法在代码里去获取/设置组合控件的颜色。

2023-02-09 18:00:06 3025

原创 【入门级图文教程】Linux系统下在Qt Creator中创建自定义控件并在其他项目中引用

详细的图文教程介绍在Qt Creator中创建自定义控件并在其他项目中引用,推荐Linux端用户阅读

2023-02-08 16:46:05 2782 5

原创 Qt核心特性之 —— 「信号(Signal)与槽(Slot)」机制

​信号(Signal):用于反映某件事情发生了,比如QPushButton的 clicked、pressed、released、toggled 等信号。本质是个特殊的成员函数声明;槽(Slot):信号处理槽函数,用于响应信号;

2022-12-12 18:19:28 6780 3

原创 「WebService」.net 下的简单天气查询示例 & 创建并发布自己的WebService

一个调用 WebService 接口查询天气的简单窗体应用程序Demo

2022-12-01 11:37:02 625

原创 工业控制上位机通用框架之「用户注册/登录」Winform应用程序Demo

工业控制上位机通用框架 —— 实现用户注册、登录以及登录后跳转至主页面的Winform应用程序Demo。使用C#开发,采用三层架构(UI、BLL、DAL、Model)搭建,其中UI层即解决方案中名为UserLoginFramework的项目,同时UserLoginFramework也是该解决方案的启动项目;所有的界面项都放在UserLoginFramework下的UIForms文件夹内了。下载完成后打开解决方案执行即可。

2022-11-29 11:40:04 1642

原创 Winform自定义控件 —— 水印文本框

当我们需要文本框中有提示性文字告诉用户应当在当前文本框内输入何种内容时;比方说常见的密码栏会有诸如“请输入密码”这类提示性的文字。

2022-11-29 10:43:58 1467

原创 Winform多个容器控件设置Dock属性为fill时出现包含情况解决办法

当一个Winform窗体内存在多个普通的或者容器类控件时,可能会在设置Dock属性时遇到控件遮盖的现象,本文对该现象做了简单剖析并提出了解决方案。

2022-11-18 16:26:13 2163

原创 基于Ethernet KRL,上位机C#通过TCP/IP与KUKA库卡机械臂通讯Demo

基于TCP协议的Winform上位机与KUKA机械臂之间的通讯demo,基于此可以开发KUKA机械臂运动控制程序

2022-11-11 17:31:29 14544 4

轴承 SolidWorks 模型(.sldprt文件)

这是一个非常普通的轴承的 SolidWorks 模型

2023-05-30

基于Qt的应用程序启动外部Shell脚本demo

通过QProcess类的start()方法我们可以在基于Qt的应用程序中启动外部Shell脚本,本demo的基本功能包含新增脚本、执行脚本、终止执行、删除脚本、打印输出以及保存脚本记录等。下载该demo后使用Qt Creator打开后可以直接编译运行。推荐运行环境为Linux操作系统、Qt5、Qt Creator5.0.0。

2023-03-07

Qt自定义控件 - 颜色选择组合控件

该组合控件封装了一个自定义信号,会在颜色发生改变时被发送;若要使用该自定义控件,连接相应的槽函数即可。同时,我们还可以通过相应的成员方法在代码里去获取/设置组合控件的颜色。

2023-03-07

「WebService」.net 下的简单天气查询示例 以及 创建并发布自己的WebService

1、​使用的 Web 服务链接: http://www.webxml.com.cn/WebServices/WeatherWebService.asmx 2、README 文档中有关于 Demo 需要启用的 Windows 服务一览以及网站绑定类型(T)无内容的解决办法;

2022-12-07

IIS添加网站时绑定类型(T)无可选项的解决办法

通过修改配置文件解决

2022-12-05

工业控制上位机通用框架之「用户注册/登录」Winform应用程序Demo

工业控制上位机通用框架 —— 实现用户注册、登录以及登录后跳转至主页面的Winform应用程序Demo。使用C#开发,采用三层架构(UI、BLL、DAL、Model)搭建,其中UI层即解决方案中名为UserLoginFramework的项目,同时该项目也是该解决方案的启动项目;所有的界面项都放在UserLoginFramework下的UIForms文件夹内了。下载完成后打开解决方案执行即可。

2022-11-29

基于TCP协议的上位机与库卡机械臂通讯Demo

在通讯Demo中,上位机作为 服务端 监听连接,而库卡机械臂作为 客户端 连接至服务端,双方数据使用 xml 格式传输。Demo中还提供了一个基于 BytesIO TCP 通讯库的服务端和客户端测试程序,可以用于测试库卡机械臂通讯程序。此外,机械臂端的 xml 配置文件和 src 源代码文件也包含在里面,要使用该Demo需要把这两个文件拷贝到机器人控制系统中的对应目录下。 xml 配置文件存放目录:C:\KRC\ROBOTER\Config\User\Common\EtherKRL KRL程序存放目录:C:\KRC\ROBOTER\Program (对于Demo中KRL程序别忘了在系统文件 $CONFIG.DAT 声明全局整型变量 "Nmb" !)

2022-11-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除