2021
03-09
03-09
PyQt5 在QListWidget自定义Item的操作
效果图自定义一个Item新建一个QWidget对象在QWidget内添加Layout在Layout内添加要的控件为QWidget设置Layout新建一个QListWidgetItem并调整大小为QListWidgetItem设置QWidget创建布局首先我们创建一个最基本的布局,只有一个listWidget和一个pushButton实现点击button后在listWidget中添加数据classWindows(QMainWindow,Ui_MainWindow):def__init__(self):super(Windows,self).__init__()self.setupUi(self)self.pushBu...
继续阅读 >
PYQT5中给listwidget的滚动条添加滚动信号self.listWidget.verticalScrollBar().valueChanged.connect(lambda:print(1))其他带有滚动条的控件也用这种方法补充:PyQt5中设置QtreeWidget水平滚动条这个问题,困惑我好一段时间,网上找了很多资料,各种尝试都没解决,隐隐约约在一个论坛中一个作者提到一句话,才得到解决。问题描述如下:开发过程中,有时候会去开发树形展示的界面,尤其文件管理系统时。由于pyqt5单独python的文...
我就废话不多说了,大家还是直接看代码吧~//窗体透明,控件不透明self.setWindowFlags(Qt.FramelessWindowHint|Qt.Tool)self.setAttribute(Qt.WA_TranslucentBackground)补充:【解决问题】pyqt5设置窗体透明,而上面的控件不透明在做软件的时候想把QWidget设置成透明的,我在网上搜了各种答案:有说设置qss背景属性的:background:transparent;但是这样就全透明了。如图3还有qss里设置background:rgba(0,0,0,0.2)也是一样的...
本人最近在做一个GUI项目时,需要用到matplotlib画图,写完代码运行时,发现所需要画图功能不能正常使用,在触发画图事件后,画布未更新,需要放大界面才能更新(奇葩吧)。经过资料查阅,发现需要画图函数后面添加self.fig.canvas.draw_idle()补充:解决PyQt5中使用柱状图和饼状图刷新问题一、问题描述在做一款番茄钟应用,其中包含数据统计功能,如下图:我遇到的问题是:当完成一个番茄钟后,需要对统计数据进行刷新,但是重新...
调用窗口的主程序如下起作用的是window.showFullScreen()这个方法。if__name__=='__main__':app=QtWidgets.QApplication(sys.argv)window=MyMainWindow()window.showFullScreen()sys.exit(app.exec_())补充:PYQT5的UI界面自适应窗口大小|QtdesignerPYQT5设置自适应的窗口大小目前网上的相关博客的介绍都太过于表面,本人基于自身需求,将我亲自实践得到的方法,倾囊相授。核心点两个:网格布局+大小限定其实基本每...
在Qtdesigner中新建一个主界面如下所示:ctrl+R预览从预览图中可以看出这时的界面不支持伸缩,拖动过小的话会导致部分界面遮住不可见,这时我们就要用到布局选项,首先对上面的按钮和文本框布局按住ctrl选中要布局的控件根据实际情况选中工具栏上的布局按钮,我这里是网格布局选中后如下所示然后在对底下的listwidget和tablewidget进行水平布局,布局完成后如下所示,其中有个细节是还要对Qgroupbox在进行一次水平或垂直布局,具...
从现在开始,我会把一些学习Python的笔记记录下来,方便自己,也方便别人。到时候看一下如果篇章足够,我单独把它们整理成专栏。最近在学习PythonGUI开发,之前一直都是做的C++GUI开发,用到的大部分是框架,主要有MFC、DuiLib和Qt。哦,如果想省时省力,可以使用QtWebEngine+H5开发界面哦,只有你Web前端基础不错的话。使用PyQt5开发界面,真的很方便,不用写太多代码,20行左右就可以出现简单的带图标GUI,不信你可以看看下...
由于隐藏了标题栏无法通过点击标题栏来实现窗口的移动,这时候我们可以通过鼠标事件来移动窗口第一步:判断鼠标左键是否被按下,如果按下则将flag设为True并获取当前的位置第二步:判断鼠标是否移动并且左键被按下,若移动了计算移动的距离在移动窗口第三步:若鼠标释放了则将flag设为False具体做法:重写窗口类自带的三个函数defmousePressEvent(self,event):ifevent.button()==Qt.LeftButton:self.m_flag=True...
我就废话不多说了,大家还是直接看代码吧~#!/usr/bin/envpython#-*-coding:utf-8-*-importsysfromPyQt5.QtWidgetsimportQApplication,QWidgetfromPyQt5.QtCoreimportQtfromPyQt5.QtGuiimportQPalette,QBrush,QPixmapclassNoBorderWindow(QWidget):def__init__(self):super().__init__()self.window_UI()self.drawn()defwindow_UI(self):self.resize(950,200)self.setWindowFl...
1.PyQt5基础1.1GUI编程学什么大致了解你所选择的GUI库基本的程序的结构:使用这个GUI库来运行你的GUI程序各种控件的特性和如何使用控件的样式资源的加载控件的布局事件和信号动画特效界面跳转设计工具的使用 1.2PyQT是什么QT是跨平台C++库的集合,它实现高级API来访问现代桌面和移动系统的许多方面。这些服务包括定位和定位服务、多媒体、NFC和蓝牙连接、基于Chromium的web浏览器以及传统的UI开发。Py...
定位色块常用到hsv色彩空间下的颜色阈值,笔者曾经用openmv时,其IDE有自带一个阈值编辑器,使用起来非常方便,现在在linux上跑cv算法,需要类似的功能,因此自己写了一个阈值编辑器。目前暂时只支持HSV色彩空间下的阈值编辑。代码:mian.py:fromthreshold_uiimportUi_WidgetfromPyQt5.QtWidgetsimportQApplicationfromPyQt5.QtGuiimportQImage,QPixmap,QFontfromPyQt5importQtWidgetsimportsysimportcv2importnum...