QT5
文章平均质量分 62
重点记录QT控件的使用以及使用过程中的一些心得与记录
丶布布
机器视觉工程师、人工智能领域优质创作者、内容合伙人、CSDN博客专家、阿里云专家博主。目前工作涉及视觉相关的缺陷检测、定位识别、芯片封装方面、深度学习、3D视觉等方面的内容,欢迎大家一起学习交流。
展开
-
[Qt5] QJson库进行存储、加载数据
本文主要对结构体中数据类型使用QJson库的方式进行读存,数据类型包括bool、int、double、enum、map等,以及结构体内嵌套子结构体情况下的处理。关于Qt中对JSON的生成与解析,Qt5以前的版本,可以使用QJson库,需要单独下载、编译,才能使用。到了 Qt5,提供了专门的QJsonDocument及其相关类来读和写JSON文档。原创 2023-05-10 13:07:11 · 1145 阅读 · 0 评论 -
[Qt5] 右键窗体弹出菜单,实现图像适应窗体大小
📢 前言 作为一种交互性强、使用方便的右键菜单在程序中是非常常用的,在Qt中可以轻松的实现。背景:通过鼠标滑轮对图像进行放大、缩小之后,需要一个操作来对图像进行复原,所以我想到了...原创 2022-05-05 08:22:31 · 3248 阅读 · 80 评论 -
[Qt5] 实现CAD中的十字标辅助线效果
文章预览:👀 前言💨 方式一:重构drawForeground()函数💨 方式一:效果展示💦 方式二:手动添加辅助线——addLine💦 方式二:效果展示👀 前言十字标辅助线是3D雷达点云标注和2D分类中常用...原创 2022-04-30 13:43:24 · 2043 阅读 · 66 评论 -
[Qt5] QGraphics图形视图框架概述(Item、Scene和View)
在 Qt 框架内的许多模块,类和子框架下,有一块专门用于简化图形处理的工具,称为**图形视图框架**。 它包含许多类,几乎所有的类都以QGraphics开头,并且所有这些类都可用于处理构建计算机视觉应用时可能遇到的大多数图形任务。 图形视图框架将所有可能的对象简单地分为三个主要类别,即场景类(`QGraphicsScene`)、视图类(`QGraphicsView`)和图元类(`QGraphicsItem`),统称为“三元素”。随之而来的架构允许轻松地添加,删除,修改以及显示图形对象。原创 2022-04-29 08:34:10 · 7885 阅读 · 42 评论 -
[字符编码] 实战篇:QT中文乱码的解决办法
本方案开发环境为VS2015+QT5环境(编译器是VC)。VS2015默认编码格式为 “GB2312”,很多时候可能出现乱码情况(中文路径或名称)。例如:写一个QStr原创 2022-01-13 18:35:52 · 7617 阅读 · 0 评论 -
[C++&Qt] 通过信号与槽传递数据
在视觉项目中,一般需要用到信号和槽机制主要有两个地方:第一条想必大家用的会比较多一些,无非就是和Qt界面上的一些按钮、复选框、编辑框等控件进行交互,这里重点介绍一些第二种方式,涉及各个类之间的信号传递与接收。例:我要传两个double类型的数据给上位机具体流程如下: 1、定义信号和槽 — signals&slots注:判断信号有没有发送成功时,可以在connect处加个断点,打印一串代码,看看最终是否打印出来,如: 2、在发送信号的位置将需要传递的数据发送出去 二、传递自定义结构体数据(适用于传递的原创 2021-03-15 16:08:42 · 3104 阅读 · 0 评论 -
[Qt5&VS] VS编译生成Qt的ui_头文件
1、点击项目中ui文件,右击进入属性,项类型选择“自定义生成工具”:2、确定后,选择“自定义生成工具”:命令行输入: “$(QTDIR)\bin\uic.exe” -o “.\GeneratedFiles\ui_%(Filename).h” “%(FullPath)”说明输入:Uic%27ing %(Identity)…输出:.\GeneratedFiles\ui_%(Filename).h;%(Outputs)附加的依赖项:$(QTDIR)\bin\uic.exe;%(AdditionalIn原创 2020-10-10 09:25:59 · 4507 阅读 · 1 评论 -
[QT5] QT5基本知识
QT:GUI编程(图形界面编程):一个跨平台的C++图形用户界面应用程序框架。1、特点:(1)跨平台(写好代码,在对应平台搭建好,可以直接运行,不用修改)(2)后台逻辑处理(编号代码)+前台界面协调2、如何学习QT?库函数的调用: (因为QT封装很多api,做的东西构架现有的,写代码就可以。) QT调用各种各样函数Strcpy();(1)功能 //拷贝字符串(2...原创 2018-10-19 20:58:54 · 730 阅读 · 1 评论 -
[QT5&OpenCV] 边缘检测、轮廓提取及轮廓跟踪
开发环境为:win10+QT5.8+opencv3.2 数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域十分重要的基础,图像分析和理解的第一步往往就是边缘检测。轮廓跟踪是获取图像的外部轮廓特征,为图像的形状分析做准备。本文主要实现图像边缘检测、轮廓提取、轮廓跟踪。一、读取图像 读取图像见QT+opencv学习笔记(1)——图像点运算,这里不再赘述。 ...原创 2018-10-29 14:04:24 · 9699 阅读 · 13 评论 -
[Qt5] QT+VS读取dwg文件
原文地址[https://blog.csdn.net/u013725001/article/details/43272161]1.下载MxDraw控件 注:可到www.mxdraw.com 自行下载2.介绍如何把控件放到QT中并运行2.1引入控件 运行Qt Creator,点击[文件]=>[新建文件或项目…],出来新建项目窗口,如下:2.2选择”Qt Widgets Appli...原创 2018-12-08 11:10:16 · 6581 阅读 · 6 评论 -
[Qt5] VS环境下实现Qt5两个窗口相互切换
核心思想:通过定义指针显示窗口在VS中新建Qt项目2.通过添加类的方式,再添加一个ui.界面(好处是可以自动生成对应的.cpp和.h文件)方式:右键Form Files——》添加——》类,选择Qt5GuiClass,添加。3.之后的界面4 . 在QtFather.ui和QtSon.ui界面分别添加按钮,并且添加槽函数、声明。.5 .在QtFather.h中包含头文件Q...原创 2019-03-20 20:47:01 · 3308 阅读 · 8 评论 -
[Qt5] 提升部件类的用法
当我们在做界面的时候,需要往其中一块区域(比如容器widget)添加内容,如果都放在一个.cpp源文件中,有时候会显得比较乱,这时候可以新建一个类,来单独实现widget容器中的内容,比如:我们换另一种方式来实现上边的操作:1.在ui界面加一个widget容器。2.添加一个类,来专门实现将上边的两个部件添加到widget容器中的...原创 2019-04-05 22:30:06 · 6867 阅读 · 2 评论 -
[Qt5] 鼠标响应事件和计时器事件
1.首先介绍一下什么是事件? 事件(event)是由系统或Qt本身在不同时刻发出的,当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件,一些事件在对用户操作做出响应是发出,如键盘事件等,另一些事件则由系统自动发出,如计时器事件。2.Qt事件处理机制:3.鼠标点击事件—单击窗口显示坐标及移...原创 2019-04-07 17:30:03 · 2119 阅读 · 0 评论 -
[Qt5] 创建菜单栏、工具栏、核心控件和浮动窗口
一.对话框内容概要菜单栏—>菜单项—>模态窗口/非模态窗口工具栏状态栏核心控件浮动窗口二 .操作步骤:1.新建项目,在ui界面添加textEdit控件(显示内容)2.包含头文件#include "QPushButton"#include "QStatusBar"#include "QLabel"#include "QTextEdit"#include "...原创 2019-04-03 08:49:05 · 6298 阅读 · 1 评论 -
[Qt5&控件] 表格列表控件Table Widget的使用
一、Table Widget控件基本参数设置1 .设置表格列宽int tableWidth = ui.tableWidget->width();ui.tableWidget->setColumnWidth(0, 50); //设置列宽2 .隐藏表格最左侧序列号ui.tableWidget->verticalHeader()->setHidden(true); 3 .设置表格最左侧行数ui.tableWidget->setItem(m_index, 0原创 2021-06-21 15:17:37 · 6527 阅读 · 1 评论 -
[Qt5&控件] 下拉框ComBoBox和层叠窗口StackedWidget控件组合使用
一、目的通过选择下拉框ComBoBox控件中的不同内容,从而切换StackedWidget控件不同的子窗口。二、实现1 . 声明槽函数: private slots: void slot_btnOffsetMethod();2 . 连接下拉框选择信号currentIndexChanged(int)(选择下拉框的不同内容即对应的不同索引值会触发该信号)与槽函数:connect(ui.cmbOffsetMethod, SIGNAL(currentIndexChanged(int)), th原创 2021-06-08 14:34:01 · 2274 阅读 · 3 评论 -
[Qt5&控件] 选项卡tabWidget控件隐藏&增加tab个数
一、头文件.h定义QWidget* af;二、在响应槽函数中添加增加&隐藏标签tab(这里我是通过复选框是否被选中来控制tab的个数:)double tabNum = ui.tabWidget->count();if (ui.cbxDoubleModel->isChecked() == true) { //这里是初始化判断一下tab个数,个数为1才会添加标签,个数为2不会添加 if(tabNum == 1) { ui.t原创 2021-03-19 10:22:35 · 4521 阅读 · 0 评论 -
[Qt5&控件] 复选框QCheckBox的使用
1、获取/设置控件的值对于复选框来说,我们最关心的是它的选中状态。实际项目中一般判断复选框是否被选中,如果被选中,执行A操作;如果没被选中,执行B操作。代码如下:if (ui.checkBox->isChecked()){ //A操作}else{ //B操作}2、事件处理当复选框被选中/取消选中时,可以得到这个事件,并添加事件处理的代码。目的:默认按钮状态是不可点击的灰色状态,当复选框被选中之后,按钮变成可选状态。实现:1)首先将按钮初始化变成不可选的灰色状态:方法一:原创 2020-10-10 19:13:50 · 12405 阅读 · 1 评论 -
[Qt5&控件] 编辑框LineEdit上的数进行四则运算
Day02:功能:在部件LineEdit上输入整数,经过槽函数处理(对该整数进行四则元算),输出新的整数。操作:(1)在ui界面放置部件PushBotton(发送者)、部件TextLabel、部件LineEdit(文本输入框)。(2)添加与信号相联系的槽,并保存。(3)在VS中生成解决方案,并且在创建的函数头文件.h中定义、声明槽函数。(4)调用槽函数。(5)运行...原创 2018-10-19 20:36:14 · 1723 阅读 · 0 评论 -
[Qt5&控件] 控件stackedWidget、lineEdit等的用法
看了一些关于QT界面部件的介绍,特此记录一下1.容器部件—widget:一般对界面进行分块布局时使用。2.多界面切换部件—stackedWidget:通常需要加一个按钮,对其进行页面切换代码:void MyMenuBar::slot1(){ static int i = 0; //静态的整形变量,使用完,数...原创 2019-04-05 20:47:19 · 1226 阅读 · 0 评论 -
[Qt5&控件] Label控件显示文本内容(字符串和整数)
QT:GUI编程(图形界面编程):一个跨平台的C++图形用户界面应用程序框架。1、特点:(1)跨平台(写好代码,在对应平台搭建好,可以直接运行,不用修改)(2)后台逻辑处理(编号代码)+前台界面协调2、如何学习QT?库函数的调用: (因为QT封装很多api,做的东西构架现有的,写代码就可以。) QT调用各种各样函数Strcpy();(1)功能 //拷贝字符串(2...原创 2018-10-19 20:34:27 · 16352 阅读 · 0 评论 -
[Qt5] 矩形、圆和多边形ROI区域的交互(List View列表视图,halcon实现)
.h#include "qstandarditemmodel.h"#include "HalconCpp.h"using namespace HalconCpp;public: Hlong m_winID;//窗口ID HTuple m_WindowHandle;//窗口句柄 HObject m_NowImage; //添加任意测量矩形框 int m_selectedDrawType; HObject selectedRect; QString selectedStr; Q原创 2021-06-24 11:17:06 · 853 阅读 · 1 评论 -
[Qt5] 鼠标中心为基准缩放图像(halcon实现)
事件过滤器可以接收一个对象的所有事件,当这个对象收到事件之前,事件过滤器通过eventFilter()函数先接收事件。eventFilter()函数返回true,则取消事件(事件不再向目标对象发送);返回false,则事件被继续发往目标对象。事件过滤器可以是任何从QObject继承的对象,只要实现eventFilter()这个函数。代码如下:.h#include "qevent.h"public: void LableMouseWhee原创 2021-06-23 10:56:33 · 1458 阅读 · 0 评论 -
[Qt5] Halcon窗口绑定在Qt界面中的QWidget部件
代码如下://窗口绑定Halcon句柄Hlong m_winID = (Hlong)this->ui.widget->winId();//m_winID = ui.widget->winId();//获取窗口控件IDSetWindowAttr("background_color", "black");//设置窗口颜色OpenWindow(0, 0, ui.widget->width(), ui.widget->height(), m_winID, "visible",原创 2020-10-10 09:56:13 · 1471 阅读 · 3 评论 -
[Qt5] 各种方式的图像读取,支持中文路径(Halcon)
文章预览:一、Qt&Halcon读取图像二、读取文件夹图像(Halcon、C++)一、Qt&Halcon读取图像1、Halcon读取相对路径下的图像方式一:#include< QFi...原创 2022-04-13 14:22:46 · 3482 阅读 · 0 评论 -
[Qt5&布局] 控件自动填满所在布局框架
如图,在界面布局时,将几个QT控件进行布局时,默认边缘时有一定间隙的(红框标注),有时为了美观,可以将布局边缘的间隙设置成我们想要的宽度具体设置方法:默认边缘间隙为11,设置原创 2022-01-17 14:14:35 · 2617 阅读 · 0 评论 -
[软件配置] VS2012&QT5&Opencv的配置教程
VS2010+QT5.7+opencv2.4.5图像界面第一个程序 QT最近新出了5.1.0版本,最近要用QT编写界面,所以重新下载了新的QT,替换了以前的Qt4.8.4. ...原创 2018-10-26 19:35:42 · 2255 阅读 · 1 评论