自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 资源 (4)
  • 收藏
  • 关注

原创 使用OpenCV与PySide(PyQt)的视觉检测小项目练习

OpenCV与PyQt(或PySide)的联合使用,各取所长

2024-07-07 22:43:09 654

原创 Qt Designer的父子部件样式表设置学习

在Qt Designer中新建图像界面,放置两个QWidget,命名为widget_1和widget_2;单独改变了widget_2,但是隶属于widget_2的pushButton_1和pushButton_2并没有改变。需要注意的是,采用这种办法,如果被改变的小部件还有它的子部件,子部件并不跟随被改变的小部件的改变而改变。这里,将隶属于widget_1的类型为QPushButton的所有部件全部定义了新的显示特性。这个样式表的含义为:widget_1中,所有的QWidget都按照指定的样式表显示。

2024-07-27 00:13:29 218

原创 PySide(PyQt)使用QPropertyAnimation制作动态界面

【代码】PySide(PyQt)使用QPropertyAnimation制作动态界面。

2024-07-25 22:45:15 71

原创 PySide(PyQt)的QPropertyAnimation(属性动画)的应用实践

究其原因, 新的代码中,QPropertyAnimation 对象animation,它是函数animate()的一个局部变量,当函数animate()执行完毕后,并没有将该变量传递到主线程,所以造成运行异常。新的代码中,将动画部分的定义和设置、运行定义为一个函数animate(),并在主循环中运行。从逻辑和语法上看没有任何问题,但是,运行的结果,并没有执行预期的动画。这个代码中,定义了一个UI(QObject)的类,将其作为项目级别的信号和变量的容器。原理和语句都很简单。这个代码的运行是没有任何问题的。

2024-07-25 21:39:29 273

原创 PySide(PyQt)的QPropertyAnimation(属性动画)

QPropertyAnimation 是 PySide(PyQt) 中一个用于在时间轴上平滑地改变对象属性的类。它常用于制作动画效果,比如移动、缩放或改变透明度等。QPropertyAnimation 是 Qt 动画框架的一部分,它能够让你在一定的时间内渐变地改变一个对象的属性。比如,你可以用它来改变一个窗口的位置、大小,或者改变一个按钮的颜色。QPropertyAnimation 允许你定义要动画化的属性,并设置它的起始值和结束值。

2024-07-25 15:39:07 910

原创 PySide(PyQt)的小部件通过伪状态以及自定义特性改变外观

除了使用默认的伪特性,还可以自定义特性,通过改变自定义特性的方法改变外观。# 自定义的特性custom_attributecolor: red;""")# 槽函数和信号连接# 按钮1点击的槽函数# 按钮1点击的连接app.exec()color: red;# 按钮1点击的连接# 按钮1点击的槽函数这样,每点击一次按钮1,按钮2的自定义特性就反转,并根据样式表改变外观。

2024-07-24 09:23:07 808

原创 PySide的style().unpolish()与style().unpolish()

在 Qt 框架中,polish() 方法用于重新应用样式表或更新控件的外观。它的作用是强制控件重新应用样式表,以确保外观的更新能反映在控件上。这个方法通常在控件的样式表更改或控件的属性发生变化后使用(发生变化的属性与外观的改变有相关,例如:在样式表里有设置)。当你修改了控件的样式表(例如通过 setStyleSheet 方法),控件可能不会立即更新其外观。调用 polish() 方法可以确保样式表被重新应用,从而更新控件的外观。polish() 方法会触发控件的重新绘制,确保控件的外观与样式表的定义一致。

2024-07-24 09:20:37 199

原创 PySide(PyQt),自定义图标按钮

1、在Qt Designer中新建画面,并放置3个按钮(QPushButton)和一个分组框(QGroupBox)小部件,分别命名为btn_1,3、将按钮的宽高尺寸改为50*50,分组框的宽高尺寸改为90*170,并将按钮拖入分组框。8、使用uic工具和 RCC工具,将ui文件和图像资源转换成python的脚本文件.py。这个应用框架是我根据自己的使用习惯和能力范围创建的,你也可以根据自己的实际情况搭建框架。4、使用画图软件绘制图标,这里是使用的32*32,同一图标存为彩色和灰度两种格式。

2024-07-23 18:04:17 567

原创 python的csv库常用操作

csv 模块是 Python 标准库中的一个模块,用于处理 CSV(逗号分隔值)文件。它提供了简单易用的功能来读取和写入 CSV 文件。

2024-07-23 00:07:24 803

原创 python的open()函数

None(默认值):这是 open() 函数的默认行为,它允许 Python 自动处理行结束符的转换。在文本模式下(默认模式),open() 函数会根据操作系统的不同,将行结束符自动转换为 \n(Unix 风格),\r\n(Windows 风格),或 \r(旧 Mac 风格)。''(空字符串):设置为空字符串时,open() 函数将不进行任何行结束符的转换。mode:文件打开模式,如 'r'(只读模式),'w'(写入模式),'a'(追加模式),'r+'(读写模式)等。file:要打开的文件的路径。

2024-07-22 22:37:11 209

原创 opencv,连续拍摄多张图像求平均值减少噪点

对于照度低或者相机质量差造成的密集的随机小噪点,可以通过拍摄多张图像求平均值的方法来减少噪点,获得较为清晰的画面。与高斯滤波的效果相比,这种方法在降噪的同时不会使画面模糊,甚至更锐利。

2024-07-21 17:40:23 344

原创 opencv读写路径包含中文的文件

opencv直接读写路径包含中文的文件会出错。这是因为cv2.imread内部处理文件路径时,默认使用的是 C++ 标准库中的字符串处理函数,这些函数对于非 ASCII 字符可能处理不当,导致无法正确读取文件。1、使用读取文件内容,可以绕过文件路径的编码问题。方法直接从文件系统中读取原始的字节流,并将其存储在一个numpy数组中。这样就避免了文件路径编码的问题。2、使用cv2.imdecode 方法从内存中的字节流解码图像数据。

2024-07-20 18:10:42 489

原创 PySide(PyQt),使用 QGraphicsOpacityEffect 设置小部件的整体显示透明度

在 PySide6 中,可以使用 QGraphicsOpacityEffect 类来实现整体显示透明度。制作一个动态闪烁的指示灯。

2024-07-19 17:07:49 218

原创 PySide在Qt Designer中使用QTableView 显示表格数据

在 PySide6 中,可以使用 Qt Model View 架构中的 QTableView 部件来显示和编辑表格数据。

2024-07-15 18:28:04 466

原创 python的seek()和tell()

是用来在文件中移动指针位置的方法。它的作用是将文件内部的当前位置设置为指定的位置。offset: 这是一个整数值,表示相对于起始位置的偏移量。如果是正数,表示向文件末尾方向移动;如果是负数,表示向文件开头方向移动;如果是0,表示移动到文件的起始位置。whence: 这是一个可选参数,指定偏移量的参考位置。它有三个可选值:从文件开头偏移: 从文件末尾偏移: 从当前位置偏移: 方法返回的是文件指针的当前位置(以字节为单位)。在处理文件时, 是一个非常有用的方法,特别是在需要跳转

2024-07-13 23:00:30 413 1

原创 python的readline()和readlines()

将文件指针移到文件末尾# 获取文件末尾位置lines = []# 逐行向前读取文件内容,直到达到指定的行数或文件开头# lines.append(f.readline().rstrip('\n')) 用readline()的方法lines = f.readlines() # 用readlines()的方法break# 返回结果,注意如果用readline()的方法要逆序输出# return lines[::-1] # 逆序输出# 调用函数并显示最后5行内容。

2024-07-13 22:56:39 1042

原创 PySide(PyQt),csv文件的显示

在Qt Designer中新建QMainWindow,命名为csvShow.ui。QMainWindow上有两个部件:widget_csv和btn_exit。

2024-07-13 18:09:47 305

原创 PySide(PyQt)判断QLineEdit的输入是否合规

判断QLineEdit的输入是否符合要求,比如是否为整数或者浮点数。

2024-07-12 11:44:34 334

原创 python关于文件和路径的一些操作

在 Python 中,os.path模块提供了许多用于处理文件和目录路径的函数,这些函数能够跨操作系统平台运行,因为它们能够自动适应不同的路径分隔符和规范化。下面是一些常用的os.path和 os.path.isdir()和 os.path.dirname()这些函数使得在处理文件和目录路径时更加方便和可移植。

2024-07-11 22:36:47 909

原创 python,利用可变对象实现设置参数的同步回存

。将['a']['b']['c']['d']['e'],这个多层的内容值设置为一个变量,当变量在使用中被改变之后,要求将自动其回存至json文件,而不用手动地再次输入['a']['b']['c']['d']['e']这样复杂的结构。我们知道,一个列表,它的内存地址是固定的,但它的元素内容是可变的,利用这个特性就可以实现变量的传递。

2024-07-10 22:19:23 853

原创 PySide(PyQt)的QMessageBox

是 PySide6 中用于显示各种消息框的类,它能够在图形用户界面中弹出一个对话框,用于向用户展示信息、警告或错误,并接收用户的响应。它通常用于与用户进行简单的交互或提示操作的结果。显示不同类型的消息:按钮和响应:使用简单:标准按钮和自定义按钮:灵活的定制化:静态方法:属性和方法:这些方法展示了如何利用 提供不同类型的消息提示,以便用户了解操作的成功与否或者需要采取的进一步步骤。总之, 是一个非常有用的工具类,能够帮助开发者在用户界面中有效地处理信息提示和用户交互,提升应用程序的用户体验。

2024-07-08 23:35:03 243

原创 PySide(PyQt)的QLabel文字设置自动换行

【代码】PySide(PyQt)的QLabel文字设置自动换行。

2024-07-08 22:19:55 123

原创 PySide(PyQt),记录最后一次访问文件的路径

【代码】PySide(PyQt),记录最后一次访问文件的路径。

2024-07-06 22:57:32 227

原创 python的os.walk()

os.walk()是一个非常有用的函数,用于在Python中遍历文件夹树。它返回一个生成器,该生成器在每次迭代时返回一个包含三个元素的元组:(当前文件夹的路径,文件夹中的子文件夹的列表,文件夹中的文件的列表)。这个函数对于递归地操作文件系统,如查找、文件重命名或移动文件特别有用。

2024-07-05 22:18:33 247

原创 OpenCV从图像中截取矩形区域

使用OpenCV可以很容易地实现将一个图像文件内部指定矩形范围内的图像复制为新的图像。

2024-07-02 23:38:00 300

原创 PySide(PyQt)与OpenCV图像格式的相互转换

PySide(PyQt)与OpenCV图像格式的相互转换的脚本

2024-06-30 20:19:32 391

原创 PySide(PyQt)在图像上画线

【代码】PySide(PyQt)在图像上画线。

2024-06-29 17:09:40 356

原创 PySide(PyQt),event.pos() 和 event.position()的区别

来获取鼠标在特定部件内的坐标,因为这通常是处理鼠标事件时所需的局部坐标。)则通常用于需要知道鼠标在屏幕上的绝对位置时,例如在拖放操作或全局事件处理中。在大多数情况下,你会使用。在 PySide6 中,

2024-06-29 10:30:38 217

原创 PySide(PyQt)利用回调和闭包定义信号与槽

如图3个按钮,均设为checkable,放置在一个groupbox内成为一个按钮组,要求实现的功能:当点击某个按钮时将本按钮设为选中(,也就是列表中最后一个按钮的状态会始终被设置为选中,而其他按钮则会被取消选中。看上去好像没问题,但是运行结果如下:无论点击哪一个按钮,只有按钮3被选中。的值都会被最后一个按钮对象所覆盖,因此当任何按钮被点击时,实际上都会调用。是一个循环变量,其值在整个循环执行期间会发生变化。这意味着在每次循环中,,并取消选中按钮站中的其他所有按钮(

2024-06-21 10:59:05 185

原创 PySide(PyQt)的特殊按钮(互锁、自锁、独占模式)

pyside6的特殊按钮(互锁、自锁、独占模式)

2024-06-19 17:39:06 292

原创 python的函数的嵌套调用

函数b()被定义在函数a()的内部,因此它的作用域仅限于a()函数内部,在a()函数外部无法直接访问和调用函数b()。将函数b()作为a()函数的返回值,这样在调用a()函数时可以得到函数b()的引用。问题的提出:我们知道可以通过定义类(class)的方法在一个函数内调用和访问另一个类内的函数或方法。那么如果不定义类,怎样用一个函数调直接用另一个函数?将函数b()定义为全局变量,这样就可以在a()函数外部访问到函数b()。将函数b()作为另一个函数的参数传递,在这个函数内部调用函数b()。

2024-06-17 17:05:26 268

原创 PySide(PyQt)实现鼠标画框局部放大

按住鼠标左键画框,裁切画面并局部放大,可以用来生成ROI。

2024-06-16 08:25:50 711

原创 PySide在QLabel上按住鼠标左键画方框

【代码】PySide在QLabel上按住鼠标左键画方框。

2024-06-15 18:07:54 345

原创 Pyside使用Qt Designer和uic工具的基本框架的demo

1、在Qt Designer里创建窗口,并存盘。本例命名为show.ui;2、使用pyuic工具将.ui转换为.py文件;3、创建主py文件,调用。

2024-06-14 11:26:39 668 2

原创 pyside6在QLabel上显示图像文件

显示结果:原图的长宽按照label的尺寸自动缩放,如果原图和label的长宽比不同,会有变形。显示结果:原图按照最合适的不变形比例进行缩放。猫咪的图片:370*280像素。运行结果:原图1:1显示。

2024-06-13 16:38:28 333

原创 python的变量的引用与赋值的学习

字典或者JSON数据,我们有时候需要修改字典的值,如果字典的结构层次很深,修改起来就很繁琐。由于变量和字典的值同时指向了同一个列表,这是因为列表是可变对象,当你通过变量修改了列表的内容时,所有指向该列表的引用都会反映出这些修改,字典的值得到了预期的修改。并没有实现预期的功能,原因与文章开头的第一段代码相同,变量只是被重新赋值,无法将变量的改变传递到字典的值。这是因为列表是可变对象,当你通过一个引用修改了列表的内容时,所有指向该列表的引用都会反映出这些修改。在这个代码中,对字典的一个值的修改很不简洁。

2024-06-13 10:49:36 557

原创 OpenCV查找图像中的轮廓并且展示

OpenCV查找图像中的轮廓并且展示

2024-06-12 11:17:08 464

原创 threading.Lock()互斥锁

是Python中的线程锁,用于在多线程程序中控制线程对共享资源的访问。当一个线程获得了锁之后,其他线程需要等待这个线程释放锁之后才能继续访问共享资源。看得出,由于多线程同时访问同一个变量,变量的变化是随机和混乱的。有了互斥锁后,线程对变量的访问是唯一和有序的。

2024-06-11 15:10:48 217

原创 threading.Timer()的用法

threading.Timer()是 Python 中的一个线程模块,用于创建一个定时器线程。它可以在指定的延迟时间后执行一个指定的函数。

2024-06-11 10:36:59 277

原创 Python的Pillow(图像处理库)非常详细的学习笔记

pillow的一些应用记录

2024-06-07 16:39:25 1003

PySide(PyQt)使用QPropertyAnimation制作动态界面

PySide(PyQt)使用QPropertyAnimation制作动态界面

2024-07-25

PySide(PyQt),自定义图标按钮的资源

PySide(PyQt),自定义图标按钮的资源

2024-07-23

Pyside使用Qt Designer和uic工具的基本框架的demo

Pyside使用Qt Designer和uic工具的基本框架的demo

2024-07-17

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

2024-06-20

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

pyside6的特殊按钮(互锁、自锁、独占模式)文章的ui资源

2024-06-19

pyside6自定义部件库和软件框架进度记录

pyside6自定义部件库和软件框架进度记录的资源

2024-04-16

pyside6自定义部件库和软件框架进度记录v2

pyside6自定义部件库和软件框架进度记录v2

2024-04-16

pyside6自定义部件库和软件框架进度记录v1

pyside6自定义部件库和软件框架进度记录v1

2024-04-11

pyqt5的组合式部件制作(四)的资源

pyqt5的组合式部件制作(四)的资源

2023-11-22

pyqt5的组合式部件制作(四)资源

pyqt5的组合式部件制作(四)资源

2023-11-22

pyqt5的组合式部件制作(二)

pyqt5的组合式部件制作(二)

2023-11-08

pyqt5的组合式部件制作(一)阶段资源

pyqt5的组合式部件制作(一)阶段资源

2023-11-07

我用PYQT5做的第一个实用的上位机项目(五)

我用PYQT5做的第一个实用的上位机项目(五)

2023-10-09

我用PYQT5做的第一个实用的上位机项目(四)配套资源

我用PYQT5做的第一个实用的上位机项目(四)配套资源

2023-10-04

我用PYQT5做的第一个实用的上位机项目(三)

我用PYQT5做的第一个实用的上位机项目(三)的资源文件

2023-10-03

我用PYQT5做的第一个实用的上位机项目(二)资源

我用PYQT5做的第一个实用的上位机项目(二)资源

2023-09-28

使用PYQT5简单制作动态仪表盘

使用PYQT5简单制作动态仪表盘

2023-09-17

PYQT制作动态时钟,使用了直接读取和旋转图片的方法

PYQT制作动态时钟,使用了直接读取和旋转图片的方法

2023-09-15

用Qlabel制作的自定义带图片的按钮

用Qlabel制作的自定义带图片的按钮

2023-08-22

博途利用MOVE-BLK-VARIANT实现混合数据类型的块移动

MOVE_BLK_VARIANT范例

2023-06-26

python与PLC通信的数据转换

python与PLC通信的数据转换

2023-06-23

数组的创建以及将二维数组转换成为一个连续的一维数组

数组的创建,选择和不选择输入连接的区别。以及将二维数组的两个维连接起来转换成为一个连续的一维数组

2023-04-17

LABVIEW调用C++的dll

编译好的深度学习dll,用labview调用

2023-04-17

西门子STL中文编程手册

西门子PLC的STL中文编程手册,带目录

2023-03-27

试试用pyqt做一个上位机软件,但愿不会烂尾(八)的资源

两个功能简单的测试页面,先不考虑界面的美化,以实现简单功能为目标。美学和人体工程学的最后再说。

2023-03-20

试试用pyqt做一个上位机软件,但愿不会烂尾(七)配套资源

pyqt的进度条显示只能接受整数输入,不能直接显示小数,采用了折中的办法,重新定义了进度条的text()函数。然后将输入的整数除以10的倍数,传递到text()函数中进行显示,比如说想显示一小数就除以10。顺便搞了几种常用的颜色方案,封装入库,以备调用。

2023-03-17

试试用pyqt做一个上位机软件,阶段5的源码

试试用pyqt做一个上位机软件,阶段5的源码

2023-03-11

试试用pyqt做一个上位机软件,但愿不会烂尾(四)的资源

试试用pyqt做一个上位机软件,但愿不会烂尾(四)的资源

2023-03-08

自制PYQT5指示灯资源

自己使用的指示灯资源,用的时候按住CTRL直接拖到新窗口即可

2023-03-08

试试用pyqt做一个上位机软件,但愿不会烂尾(二)资源

试试用pyqt做一个上位机软件,但愿不会烂尾(二)资源

2023-03-08

配套的资源文件,记录一下过程

学习简单SCADA用到的资源

2023-03-08

labview检测并显示移动物体的练习,有参考别人

abview检测并显示移动物体,并算出最大的物体移动速度

2022-07-31

用labview检测移动物体的练习程序

用IMAQ Absolute Difference将连续采集的图像相邻帧的像素差显示出来,可用于运动目标检测

2022-07-30

LABVIEW强制类型转换以及强制转换为类型二者的区别

初学,有些概念比较模糊,做了一个小程序对二者的区别加以总结

2022-05-27

labview字符串到数字的转换

初学labview,共同探讨一下

2022-05-21

空空如也

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

TA关注的人

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