PyQt5不规则窗口实现动画效果实例importsysfromPyQt5.QtCoreimport*fromPyQt5.QtGuiimport*fromPyQt5.QtWidgetsimport*classShapeWidget(QWidget):def__init__(self,parent=None):super(ShapeWidget,self).__init__(parent)self.i=1self.mypix()self.timer=QTimer()self.timer.setInterval(500)self.timer.timeout.connect(self.timeChanged)self.timer.start()#显示不规则图片def...
继续阅读 >
分类:GUI库图形界面开发
2020
09-24
09-24
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
在PyQt中常用的图像类有四种,QPixmap,QImage,QPicture,QBitmap类型描述QPixmap专门为绘图设计的,在绘制图片时需要使用QPixmapQImage提供了一个与硬件无关的图像表示函数,可以用于图片像素级访问QPicture是一个绘图设备类,它继承自QPainter类,可以使用QPainter的begin()函数在QPicture上绘图,使用end()函数结束绘图,使用QPicture...
继续阅读 >
PyQt5中信号与槽可以说是对事件处理机制的高级封装,如果说事件是用来创建窗口控件的,那么信号与槽就是用来对这个控件进行使用的,比如一个按钮,当我们使用按钮时,只关心clicked信号,至于这个按钮如何接受并处里鼠标点击事件,然后在发射这个信号,则不关心,但是如果要重载一个按钮,这时候就要关心了,比如可以改变它的行为:在鼠标按下时触发clicked信号,而不是释放时PyQt5常见事件类型pyqt是对Qt的封装,qt程序是事件驱动...
继续阅读 >
在pyqt5编程过程中,经常会遇到输入或选择多个参数的问题,把多个参数写到一个窗口中,主窗口会显得很臃肿,所以,一般是添加一个按钮,调用对话框,在对话框中进行参数的选择,关闭对话框将参数返回给主窗口pyqt提供了一些标准的对话框类,用于输入数据,修改数据,更改应用的设置等,常见的有QFileDialog,QInputDialog,QColorDialog,QFontDialog等,在不同的窗口之间传参数有两种常用的方式,一种在自定义对话框之间通过属性...
继续阅读 >
PyQt5简单多线程信号与槽的使用最简单的多线程使用方法是利用QThread函数,展示QThread函数和信号简单结合的方法importsysfromPyQt5.QtCoreimport*fromPyQt5.QtWidgetsimport*classMain(QWidget):def__init__(self,parent=None):super(Main,self).__init__(parent)#创建一个线程实例并设置名称变量信号与槽self.thread=MyThread()self.thread.setIdentity('thread1')self.thread.sinOut.co...
继续阅读 >
在下面这3篇文章中我们给出了手工输入代码的信号与槽的使用方法,因为采用这种方法介绍时,会简单一些,如果使用QtDesigner来介绍这些功能,那么任何一个简单的功能都会使用xxxx.uixxxx.pycall_xxxx.py三个文件来实现,这样内容会显得很乱pythonGUI库图形界面开发之PyQt5信号与槽基础使用方法与实例pythonGUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例pythonGUI库图形界面开发之PyQt5信号与槽...
继续阅读 >
装饰器信号与槽所谓装饰器信号与槽,就是通过装饰器的方法来定义信号与槽函数,具体的使用方法如下@PyQt5.QtCore.pyqtSlot(参数)defon_发送者对象名称_发射信号名称(self,参数):pass这种方法有效的前提是下面的函数已经执行:QMetaObject.connectSlotsByName(QObject)在上面的代码中,‘发送者对象名称'就是使用setObjectName函数设置的名称,因此自定义槽函数的命名规则也可以看做:on+使用setObjectName设置的名称+信号名称接...
继续阅读 >
2020
09-24
09-24
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
信号与槽有三种使用方法第一种:内置信号与槽的使用第二种:自定义信号与槽的使用第三种:装饰器的信号与槽的使用一:内置信号与槽的使用内置信号与槽的使用,是指在发射信号时,使用窗口控件的函数,而不是自定义的函数,这种也是我们前面用的最多的,下面简单的一个实例,大家就会明白importsysfromPyQt5.QtWidgetsimportQMessageBox,QPushButton,QApplication,QWidgetapp=QApplication(sys.argv)widget=QWidget()defshowM...
继续阅读 >
PyQt5动态(可拖动控件大小)布局控件QSplitter简介PyQt还提供了特殊的布局管理器QSplitter。它可以动态地拖动子控件之间的边界,算是一个动态的布局管理器,QSplitter允许用户拖动子控件的边界控制子控件的大小,并提供一个处理拖曳子控件的控制器在QSplitter对象中各子控件默认是横向布局的,可以使用Qt,Vertical进行垂直布局QSplitter类中常用的方法方法描述addWidget()将小控件添加...
继续阅读 >
PyQt5布局控件QFormLayout简介QFormLayout是label-field式的表单布局,顾明思议,就是实现表单方式的布局,表单是提示用户进行交互的一种模式,主要有两列组成,第一列用于显示信息,给用户提示,一般叫做label域,第二列需要用户进行选择或输入,一般叫做field域,label与field的关系就是label关联fieldQFormLayout表单布局的使用实例importsysfromPyQt5.QtWidgetsimportQApplication,QWidget,QFormLayout,QLineEdit,QLa...
继续阅读 >
PyQt5布局控件QGridLayout简介QGridLayout(网格布局)是将窗口分割成行和列的网格来进行排列,通常可以使用函数addWidget()将被管理的控件(Widget)添加到窗口中,或者使用addLayout()函数将布局(layout)添加到窗口中,也可以通过addWIdget()函数对所添加的控件设置行数与列数的跨越,最后实现网格占据多个窗格QGridLayout类中常用的方法方法描述addWidget(QWidgetWidget,introw,...
继续阅读 >
PyQt5布局控件QVBoxLayout简介采用QVBoxLayout类,按照从上到下的顺序添加控件本节内容较少,演示两个实例,便于明白QVBoxLayout(垂直布局)的使用QVBoxLayout的正常使用实例importsysfromPyQt5.QtWidgetsimportQApplication,QWidget,QVBoxLayout,QPushButtonclassWinform(QWidget):def__init__(self,parent=None):super(Winform,self).__init__(parent)self.setWindowTitle("垂直布局管理例子")self.re...
继续阅读 >
PyQt5布局控件QHBoxLayout简介采用QBOXLayout类可以在水平和垂直方向上排列控件,QHBoxLayout和QVBoxLayout类继承自QBoxLayout采用QHBoxLayout类,按照从左到右的顺序来添加控件QHBoxLayout类中常用的方法如下方法描述addLayout(self,stretch=0)在窗口的右边添加布局,使用stretch(伸缩量)进行伸缩,伸缩量默认为0addWidget(self,QWidget.stretch,Qt.Alignmenyalihnme...
继续阅读 >
PyQt5滚动条控件QScrollBar简介可以看到,前面介绍的几个窗口控件的共同点是新建一些窗口来装载更多的控件,而QScrollBar提供了另一种思路:这个控件提供水平的或垂直的滚动条,这样可以扩大当前窗口的有效装载面积,从而装载更多的控件QScrollBar类中常用的信号信号含义valueChanged当滑动条的值改变发射此信号sliderMoved当用户拖动滑块时发射此信号QScrol...
继续阅读 >
PyQt5MDI(多文档窗口)QMidArea简介一种同时显示多个窗口的方法是,创建多个独立的窗口,这些独立的窗口被称为SDI(SingleDocumentInterface单文档界面),每个窗口都有自己的菜单系统,工具栏等,这需要占用很多资源MDI(MultipleDocumentInterface多文档界面)应用程序占用较少的内存资源,子窗口可以放在主窗口的容器中,这个容器控件被称为QMidAreaQMidArea控件通常占据在QMainWindow对象的中央位置,子窗口在这个区域是...
继续阅读 >
PyQt5树形结构控件QTreeWidget简介QTreeWidget类根据预设的模型提供树形显示控件。QTreeWidget使用类似于QListView类的方式提供一种典型的基于item的树形交互方法类,该类基于QT的“模型/视图”结构,提供了默认的模型来支撑item的显示,这些item类为QTreeWidgetItem类。如果不需要灵活的“模型/视图”框架,可以使用QTreeWidget来创建有层级关系的树形结构。当把标准item模型结合QTreeView使用时,可以得到更灵...
继续阅读 >