
Qt学习
吃面小王子
踏踏实实把技术学好、做好!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Halcon联合Qt C++ 自定义显示文字并设置字体大小粗体等
这个方法避免使用了set_display_font 和 disp_message(在18.0版本的Halcon中导出C++版本时这两个函数没有封装好,使用这两个函数的话需要复制大段代码)HTuple font;QueryFont(hv_WindowID, &font);//选择字体font = font[0]; //设置粗体if (ui->checkBox_textBold->isChecked()){ font += "-Bold-"; } els原创 2021-12-27 11:11:56 · 1600 阅读 · 0 评论 -
halcon C++ 可交互矩形、角度矩形、圆形 如何设置drawingobject回调函数
前言最近在用Qt写模板匹配的界面程序,原本是想用createDrawingObjectRectangle1, createDrawingObjectRectangle2, createDrawingObjectCircle…但是发现自己用的Halcon版本是18.11,在用到网上教程里的函数(尤其是将HTuple转为Hlong)时,会出现error: Illegal operation on HTuple,真的好无语…附上低版本halcon可用的教程链接- 如果你的halcon版本不是18及以上,应该可原创 2021-12-07 11:21:32 · 4018 阅读 · 0 评论 -
C++ Qt联合Halcon 鼠标悬浮显示图片灰度值,实现鼠标缩放滚轮,拖动图片
首先参考了以下博客,感谢:十亦山雨的 [《VS+Qt应用开发-Qt+Halcon显示图片,实现鼠标缩放、移动图片》] (看评论区说暂时无法实现鼠标悬浮显示灰度值)(https://blog.youkuaiyun.com/qq_36170958/article/details/108796612#comments_17421530)进击的路飞桑的《Halcon+Winform实现图像缩放等功能》(C#版本)先看效果:代码://mainwindow.h#ifndef MAINWINDOW_H#defi原创 2021-10-18 12:58:56 · 1706 阅读 · 2 评论 -
Halcon中一些突然想不起来但确实有用的算子
Halcon中一些突然想不起来但确实有用的算子1、Developdev_display 在现有图形窗口中显示图像目标。dev_set_color 设置一个或更多输出颜色,通常用于设置region或者xld的颜色。dev_set_draw 定义区域填充模式,可选项有fill和margindev_set_line_width 定义区域轮廓输出的线宽。dev_set_shape 定义区域输出形状,例如以矩形显示或者以圆形显示,这样可以更好地标记区域。2、Imageinvert_imag转载 2021-07-16 19:59:40 · 473 阅读 · 0 评论 -
Halcon C++ Halcon dispimage 显示灰度图像而不是彩色图像
明明是彩色图像,为什么在Qt界面上显示的是黑白的??debug了半天,用过countchannels来确认图像是三通道的彩色图像,最后,万万没想到是DispImage(image, hv_WindowID) 这么看似简单的一行代码导致的错误!DispImage只能显示灰度图像,而我们需要用DispObj去显示彩色图像~ HTuple channels; CountChannels(image, &channels); if (1 == channels[0].I()) //单原创 2021-07-13 18:32:57 · 1106 阅读 · 0 评论 -
【Qt】用setValue()设置UI控件内的内容,如何避免valuechange()被触发
问题:我想在cpp中用setValue()设置spinbox UI上的内容,但是在设置spinbox的内容会自动触发valuechanged(),如何避免这种情况呢?解决方法ui->doubleSpinBox_Lower1->blockSignals(true); //堵塞信号的触发ui->doubleSpinBox_Lower1->setValue(lowerBound1);ui->doubleSpinBox_Lower1->blockSignals(fal原创 2021-07-10 15:31:22 · 2403 阅读 · 0 评论 -
【Qt小白】QMessageBox 按钮 中文
问题描述:Qt默认的QMessageBox按钮是Save, Discard, Cancel等英文,为了让界面语言统一,我们需要将这些按钮设置为中文。解决方案: //提示版 QMessageBox msgBox; msgBox.setText(tr("当前设置尚未保存。")); msgBox.setInformativeText(tr("是否保存当前设置?")); msgBox.setStandardButtons(QMessageBox::Save原创 2021-06-22 16:34:41 · 2399 阅读 · 1 评论 -
在Qt中加Boost库 以及使用序列化serialization
没有运行过下载好的boost文件夹里的b2.exe(或者是bjam.exe)的,可以看一下这篇文章,https://blog.youkuaiyun.com/weixin_49601095/article/details/118089178?spm=1001.2014.3001.5501。因为我们想在Qt creator里添加boost,所以不用在visual studio里设置。在.pro文件中添加两行代码:INCLUDEPATH += E:/boost_1_76_0/boost_1_76_0 //这是我解压后原创 2021-06-21 16:58:17 · 513 阅读 · 0 评论 -
Qt 自定义类如何使用信号和槽
自定义类的声明 要使用信号和槽,需要继承QObject类.否则会提示connect函数错误 class myclass: public QObject{Q_OBJECTpublic:myclass(QObject * parent = nullptr);private SLOT:void my_slot(void *);}信号连接到槽函数 信号函数和槽函数的参数列表需要保持一致,否则会编译出错 用法示例: QObject::connect(xxx, SIGNAL(xxx(voi转载 2021-06-19 15:45:49 · 1115 阅读 · 0 评论 -
Qt中报错error: allocation of incomplete type
来自:http://www.cryfeifei.cn/246.html 张小飞 发布了一篇文章 《Qt中报错error: allocation of incomplete type ‘Ui::‘》 3月前 • Qt, Qt技巧 • allocation of incomplete type, Ui:: &nbs...转载 2021-06-19 13:43:48 · 2723 阅读 · 0 评论 -
【Qt小白】QTreewidget 实现删除 并使上一个节点不被选中
需求:选中一个item后,点击删除按钮,可以删除item。如果item有子项目,则删除其子项目。删除一个item后,取消已选择项。实现:void MainWindow::removeItem(QTreeWidgetItem *item){ int count = item->childCount(); if (count>0){ //检查是否有子项目,有的话对子项目进行removeItem for (int i = 0; i < count;原创 2021-06-17 13:52:12 · 1609 阅读 · 1 评论 -
Qt5之qrc资源文件
1、创建qrc资源文件2、资源 qss文件,ico, png 都可以3、当前项目文件夹注意:资源文件有更新,比如,某个图片名不变,但图片内容变了,需要重新添加该资源,才能生效。我之前就是,改了了 某个按钮的图片,名字不变,但就是不不生效。后来,删除先前添加的图片,重新添加后,就OK啦。 ...转载 2021-06-16 19:07:34 · 594 阅读 · 1 评论 -
【Qt小白】QTreewidget添加连接线条 add connecting lines for branche
QTreewidget 每个分支如何添加连接线条原创 2021-06-16 18:51:01 · 1582 阅读 · 1 评论 -
【Qt小白】在树部件中禁止拖动有子项目的父项目qtreewidget top-level items with children
我们想把第一个widget里的项目拖动到第二个widget中。由于有子项目的项目其实是一个大类,没有实际意义,所以我们并不想把它拖动到第二个widget,因此,我们想要在禁止用户拖动有子项目的父项目。原创 2021-06-16 14:50:58 · 685 阅读 · 0 评论 -
【Qt小白】QTreeWidget drag drop到两个item之间 且出现line indicator
每次想要把一个节点插入到某两个item之间时,总是被当成其中一个item的孩子,无法以top-level插入到这两个item之间,且没有line indicator原创 2021-06-16 14:14:04 · 1319 阅读 · 1 评论 -
【Qt小白】如何选择用不同的编译器debug
创建project的时候选错了编译器该怎么办?比如我选了MSVC,但是后来发现我需要用MinGW来编译。此刻点击debug我们只能看到MSVC。解决办法:点击左侧“项目”然后选择你想用的编译器,就ok啦~...原创 2021-06-03 18:51:07 · 1281 阅读 · 0 评论 -
【Qt小白】如何在mainwindow里添加工具栏toolbar
我着实是Qt小白,通过添加新文件得到的mainwindow.ui 里只有菜单栏和状态栏,没有书上说的toolbar工具栏:我上下求索,后来发现…只要在黑色的mainwindow区域右击,然后选择第一项“添加工具栏”,就ok了…以上...原创 2021-05-21 15:33:07 · 5249 阅读 · 6 评论 -
Qt 零基础小白学习教程资源(持续更新)
书籍霍亚飞 - 《Qt Creator快速入门》 (建议先看这本入门,因为相较于第二本,这本更大白话、步骤描述很详细)闫峰欣等-《C++ GUI Qt4 编程(第二版)》网上教程http://shouce.jb51.net/qt-beginning/该系列教程是基于QtCreator开发环境的Qt入门级教程。自2009年10月至今的两年多时间里,该系列教程逐渐完善,已经包含了Qt基础、2D绘图、数据库和XML、网络编程、Qt Quick等最基本和最常用的知识点。从该系列教程中衍生出的Qt专题教程原创 2021-06-02 12:56:27 · 540 阅读 · 0 评论