PyQT模块 QtCore模块 涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及的时间、文件、目录、数据类型、文本流、链接、QMimeData、线程或进程等对象。...QtWidgets模块 包含了一整套UI元素控件,用于建立符合系统风格的Classic界面,非常方便,可以在安装时选择是否使用此功能。...QtXmlPatterns模块 所包含的类实现了对XML和自定义数据模型的Xquery与XPath的支持。 QtDesigner模块 所包含的类允许使用PyQt扩展Qt Designer。...PyQT主要类 QObject类 在类层次结构中是顶部类(Top Class),它是所有PyQt对象的基类。 QPaintDevice类 所有可绘制的对象的基类。...,可以包含多个命令按钮,通常放在QMainWindow的顶部 QListView控件 可以显示和控制可选的多选列表,可以设置ListMode或IconMode QPixmap控件 可以在绘图设备上显示图像
其中三巨头是Tkinter、wxPython和PyQt。这些工具包中的每一个都将与Windows、macOS和Linux一起工作,而PyQt具有在移动设备上工作的附加功能。...PyQt和Tkinter都自己绘制小部件,这就是为什么它们并不总是去匹配本机小部件,尽管PyQt已经非常接近了。 这并不是说wxPython不支持自定义小部件。...这是一个很好的小应用程序,演示了wxPython中包含的绝大多数小部件。演示允许开发人员在一个选项卡中查看代码,并在第二个选项卡中运行代码。...当你阻止一个事件循环时,GUI将变得无响应并对用户显示为冻结状态。 在GUI中启动的任何进程,如果耗时超过四分之一秒,都应该作为单独的线程或进程启动。这将防止GUI冻结,并为用户提供更好的用户体验。...如果在Windows上没有面板,则禁用选项卡遍历。 当你将panel小部件添加到框架中,并且该面板是框架的唯一子元素时,它将自动展开以填充框架。 下一步是添加一个wx.textcrl到面板。
此方法有多种变量,但是在大多数情况下,您可以从以下两种进行选择: .addRow(label,field)将新行添加到表单布局的底部。...在这种情况下,使用QVBoxLayout是因为您希望将小部件垂直排列在窗体上。在您的模型中,这是蓝色布局。 在第19行,您创建一个表单布局来保存标签和行编辑。 在第21行,将所需的小部件添加到布局中。...在第25行上,创建QStackedLayout对象。在第27至32行上,将第一页添加到布局中,在第34至39行上,将第二页添加到布局中。...在这种情况下,您的应用程序布局中有两个页面。每个页面由一个QWidget对象表示。当您在窗口顶部的组合框中选择一个新页面时,布局将更改以显示所选页面。...使用PyQt的标签小部件 在PyQt中创建多页排列的另一种流行方式是使用称为QTabWidget的类。此类提供标签栏和页面区域。
作为常用的小部件之一,QPushButton可用于添加交互性并为用户提供操作按钮。它具有丰富的功能和属性,可以显示文本标签或图标,支持信号与槽机制,允许分配快捷键,并可通过样式表进行自定义外观。...通过使用QPushButton,开发人员可以轻松地在Qt应用程序中添加按钮并实现自定义的外观和行为,从而为用户提供更好的界面体验。...setToolTip("Tooltip text"):设置按钮的工具提示文本,当鼠标悬停在按钮上时显示。 这些是按钮的常用功能和属性。...): # 添加自定义的样式设置 pass 2、重写按钮的行为: 通过在自定义按钮类中定义新的方法或重写父类的方法,我们可以实现按钮的自定义行为。...希望本博客能够帮助读者理解 PyQt 按钮的基本知识和用法,并激发他们进一步探索和实践的兴趣。祝愿读者在使用 PyQt 框架时能够灵活运用按钮,并开发出出色的用户界面。
在PyQt中,重新实现拖放事件处理方法,可用于处理自定义数据,或者实现一些特殊的拖放功能。...本篇示例演示的是拖动移动,而不是复制(当然,也可以复制),重新实现了以下拖动相关的方法: dragEnterEvent()#拖动开始时,和刚进入目标控件时调用 dragMoveEvent()#鼠标移动过程中不断被调用...#dragEnterEvent不是必需的 #dragMoveEvent也不是必需的,没它的副作用是拖动图标有个禁止的小标志 #dragMoveEvent会在拖动的过程中频繁调用,计算量大的代码不宜放在此处...drag.setHotSpot(QPoint(width//2, height//2)) #设置拖动过程中鼠标在图标中的位置 drag.setPixmap(pixmap...print("在拖动源控件中的索引是%d"%index) self.takeItem(index) def dropEvent(self, event
】(基础篇—5)文章中,聊到了如何使用Qt Designer进行窗口布局管理,其实在Qt Designer中可以非常方便进行窗口布局管理设计,本篇博文在4种窗口布局方式基础上继续深入聊聊API函数~ 在...QHBoxLayout类中的常用方法如下表所示: 在创建QHBoxLayout布局时用到的对齐方式参数如下表所示: 通过一个例子,了解水平布局使用,示例代码如下所示: import sys from...QGridLayout类中的常用方法如下表所示: 3.1、单一的网络布局 来做个单一网格布局的小案例,创建QGridLayout的实例,并设置为窗口的布局,创建按钮的标签列表,在网格中创建一个位置列表...表单是提示用户进行交互的一种模式,其主要由两列组成:第一列用于显示信息,给用户提示,一般叫作label域;第二列需要用户进行选择或输入,一般叫作field域。...对5.1中的示例进行优化,先准备一个全局控件,用于添加全局布局,定义全局布局和4种局部布局,在局部布局中放置一些按钮控件,最后把4种局部布局添加到全局布局中。
当我们不需要复杂的列表时,可以选择QListWidget。QListWidget中可以添加QListWidgetItem类型作为列表项,QListWidgetItem即可以有文本,也可以有图标。...:第一种需要在构造时设置所要添加到的QListWidget对象;第二种方法不需要这样设置,而是要调用addItem()或者insertItem()自行添加。...我们可以利用QListWidget发出的各种信号来判断是哪个列表项被选择,具体细节可以参考文档。另外,我们也可以改变列表的显示方式。...()的参数为QListView::IconMode,若为QListView::ListMode,则是一行一行的显示。...和ListMode的差别 在使用ListMode的时候,你无法通过 ListWidgetItem->setSizeHint(QSize(155,41)); 这种方式修改Item的宽度 需要使用IconMode
QSS介绍前言 QSS即Qt样式表,是用来自定义控件外观的一种机制,QSS大量参考了Css的内容,但QSS的功能要比Css弱得多,体现在选择器少,可以使用的QSS属性也少,而且并不是所有的属性都可以应用在...PyQt的控件上,QSS使页面美化跟代码层分开,利于维护 QSS的语法规则 QSS的语法规则几乎与CSS相同,QSS样式由两部分组成,其中一部分是选择器(Selector),指定哪些软件会受到影响,另一部分是声明...的控件,这里的id实际上就是objectName指定的值 后代选择器 QDialog QPushButton,匹配所有的QDialog容器中包含的QPushButton,不管是直接的,还是间接的 子选择器...QPushButton {color:red} 表示选择所有ID为mytable的容器中包含的QPushButton 方箱模型 在样式表中,每个部件都被看作是一个由四个同心相似的矩形组成的箱体:...和subcontrol-origin属性,子部件可以被放置在部件箱体内的任何位置。
今天,我们将使用Python,在PyQt5中借助PyQtGtaph绘制一个带有十字光标的股票历史走势K线图。 一、创建图形界面窗口骨架 首先,我们来创建一个基础的图形界面。...() # 实例化一个绘图部件 self.k_layout.addWidget(self.k_plt) # 添加绘图部件到K线图部件的网格布局层 # 将上述部件添加到布局层中...在得到K线图之后,我们将其添加到之前实例化好的PlotWidget()部件self.k_plt中,并对图形添加设置其他属性,其代码如下所示: def plot_k_line(self,code=...self.k_plt.addItem(self.hLine, ignoreBounds=True) # 在图形部件中添加水平线条 这个方法将是我们点击【查询】按钮,对点击信号进行处理时需要调用的方法...,它是在图形界面窗口中显示K线图的关键。
PyQt5 MDI(多文档窗口)QMidArea简介 一种同时显示多个窗口的方法是,创建多个独立的窗口,这些独立的窗口被称为SDI(Single Document Interface 单文档界面),每个窗口都有自己的菜单系统...QMidArea类和QMdiSubWindow类中的常用方法 方法 描述 addSubWindow() 将一个小控件添加在MDI区域作为一个新的子窗口 removeSubWindow() 删除一个子窗口的小控件...triggered信号,连接到槽函数windowaction() file.triggered[QAction].connect(self.windowaction) 当选择菜单NEw动作时,会添加一个新的...(sub) #子窗口显示 sub.show() 当选择菜单中的Cascade和tiled动作时,会在主窗口显示自窗口的排序方式,级联显示或者平铺显示 if q.text(...()=='Tiled': #tileSubWindow():安排子窗口在Mdi区域平铺显示 self.mdi.tileSubWindow() 本文主要讲解了PyQt5 MDI(多文档窗口
from PyQt5.QtCore import QSettings 为了解决图标文件(以及帮助文件和其它一些较小的文件)与应用程序目录不匹配 或者 易丢失 的问题,在PyQt中,可以将多个图标文件打包成资源文件...格式的文件,可通过手写完成(也可以自编小程序代替手写),还可以Qt 设计师 的 资源浏览器创建(从pip安装 pyqt5-tools 即可完成Qt Designer程序的安装,使用Qt Designer...可以通过拖动部件的方式很方便创建应用程序的用户界面,后续会有介绍): ?...通过对话框,可选择要加载的文件(可多选),可以给已选的文件加别名。最后点OK 即可生成相应的 .qrc 文件。 ?...py文件即可: import my_resource 之后就可以在程序中这样创建图标: QIcon(":/icon/editcut.png")#创建资源文件时设有前缀,所有有二级目录 因为设置了别名,也可以这样简写
文本输入栏的自动补全 4.密码的输入和文本输入栏的自动补全 公用类型 QLineEdit.ActionPosition 描述如何显示加入到输入框中的action部件。...LayoutDirectionAuto 有两个用途,当与小部件和布局一起使用时,它将暗示使用在父小部件或QApplication上设置的布局方向。...通常情况下,即使具有焦点,空行编辑也会显示占位符文本。但是,如果内容是水平居中的,则行编辑具有焦点时,占位符文本不会显示在光标下方。默认情况下,该属性包含一个空字符串。...selectAll() :选中所有文本(即:高亮),并将光标移动到末尾。当一个默认值被插入时,这非常有用,因为如果用户在点击部件之前就输入,选中的文本将被删除。...https://zhuanlan.zhihu.com/p/34008281 专栏中的视频中我们基本上实现了这个功能,在输入问题提示上没有网易邮箱那么全面,只是给出来了通用的提示信息。
文章目录 前言 PyQt5界面设计 使用Qt Designer绘制界面 视频部件插入小技巧 解码器下载 功能实现 trace.moe API介绍与视频 使用Nuitka打包成exe...安装方法:pip install PyQt5 使用Qt Designer绘制界面 在设计一个图形化界面的应用时,我们需要先绘制出其大致布局,可以在草稿纸上勾勒一下,然后通过PyQt5中的Qt Designer...本次界面设计并不复杂,两个按钮,一个打开图片,另一个点击后开始查询;一个QComboBox部件,用于选择备选结果;一个图片显示区域,显示打开的查询图片,一个结果显示区域,显示查询结果具体内容。...视频部件插入小技巧 在UI界面中加一个视频显示部分我花了不少时间去研究,主要因为Qt Designer中没有视频播放器的小部件,于是我就有点懵了,虽然可以直接编辑Python代码来弄,但为了统一流程,还是希望能在...经过一番研究,总结以下方法: 第一步:拖拽一个Containers中的Widget到编辑界面; 第二步:选择Widget部件,右键选择“提升为…(Promote to …)”; 第三步:设置
(更正了结尾处资源路径的写法) 为了解决图标文件(以及帮助文件和其它一些较小的文件)与应用程序目录不匹配 或者 易丢失 的问题,在PyQt中,可以将多个图标文件打包成资源文件,再编译成一个.py 文件以供应用程序调用...格式的文件,可通过手写完成(也可以自编小程序代替手写),还可以Qt 设计师 的 资源浏览器创建(从pip安装 pyqt5-tools 即可完成Qt Designer程序的安装,使用Qt Designer...可以通过拖动部件的方式很方便创建应用程序的用户界面,后续会有介绍): ?...通过对话框,可选择要加载的文件(可多选),可以给已选的文件加别名。最后点OK 即可生成相应的 .qrc 文件。 ?...py文件即可: import my_resource 之后就可以在程序中这样创建图标: QIcon(":icon/editpaste.png")#创建资源文件时若设有分组前缀 如果设置了别名,则不可以使用文件名
则可以对这些字段进行拆分,分别放置在不同界面的选项卡中 QTabWidget类中常用的方法 方法 描述 addTab() 将一个控件添加到Tab控件的选项卡中 insertTab() 将一个Tab控件的选项卡插入到指定的位置...) 设置选项卡栏的小控件 setTabPosition() 设置选项卡的位置 QTabWidget.North:显示在页面的上方 QTabWidget.South:显示在页面的下方 QTabWidget.West...:显示在页面的左侧 QTabWidget.East:显示在页面的右侧 setTabText() 定义Tab选项卡的显示值 QTabWidget类中的常用信号 信号 描述 currentChanged...切换当前页面时发射该信号 实例:QTabWidget的使用 import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from...代码分析 在这个例子中,一个表单的内容分为3组,每一组小控件都显示在不同的选项卡中,顶层窗口是一个QTabWidget控件,将三个选项卡添加进去 #创建3个选项卡小控件窗口 self.tab1=QWidget
python PyQt创建上下文菜单 1、在小部件中添加一些操作QWidget.addAction()。...2、将contextMenuPolicy设置为Qt.ActionsContextMenu,以便在上下文菜单中显示操作小部件。 这是一种非常快速的方法,使用Python和PyQt创建上下文菜单。...实例 使用这种技术,您可以向示例应用程序的中央部件添加上下文菜单,并为用户提供一种快速访问某些应用选项的方法。...因此,您可以将以下方法添加到Window: class Window(QMainWindow): # Snip... ...创建上下文菜单的方法,希望对大家有所帮助。
就是将组合框内的控件标识为一组控件来使用,即一次只能选择其中的一个控件:如性别选择,当选择男时,女不被选择;当选择女时男不被选择 clicked(): 点击QGroupBox控件时,发射该信号; toggled...; widget(): 获得指定标签索引的部件; indexOf(): 获得指定部件的标签索引; count(): 总标签数; setTabPosition(): 设置标签的显示位置,值为(北:QTabWidget.North...可以填充一些小控件,但是同一时间只有一个小控件可以显示。...它是放置在QMainWindow中的中央窗口小部件周围的停靠窗口小部件区域中的次要窗口。QDockWidget由一个标题栏和内容区域组成。标题栏显示浮动窗口小部件窗口标题,浮动按钮和关闭按钮。...; visibilityChanged: 停靠窗口的可视属性(显示/隐藏)发生改变时发射该信号; dockLocationChanged: 停靠窗口的位置发生了改变时发射该信号。
在之前介绍PyQtGraph的文章中,我们都是一次性的获取数据并将其绘制为图形。然而在很多场景中,我们都需要对实时的数据进行图形化展示。...一、通过Python获取实时的CPU信息 在Windows操作系统的电脑上,我们通过“任务管理器”可以很方便地查看到自己电脑CPU实时的使用情况,并且CPU的占用率还会通过一个实时的图形区域显示出来,如下图所示...self.plot_layout.addWidget(self.plot_plt) # 添加绘图部件到线图部件的网格布局层 # 将上述部件添加到布局层中 self.main_layout.addWidget...三、在PyQtGraph中实时显示CPU数据 创建好了基础的图形界面之后,我们就可以实时获取电脑CPU的使用率然后将其绘制在图形界面上了。...self.plot_layout.addWidget(self.plot_plt) # 添加绘图部件到K线图部件的网格布局层 # 将上述部件添加到布局层中
上一篇我们通过Qt 设计师生成了 .ui 文件。下一步是将该 .ui 文件转化为 .py 的python文件。 我们在命令行用 PyQt5 的 pyuic5 命令进行转化。...安装后好需进行外部工具的配置。通过菜单File-->Settings, 打开了设置面板: ? 在面板中选择Tools,External Tools: ?...配置完成置后就可以从 Pycharm 的菜单 Tool-->External Tools 下找到并使用相应的外部工具进行快速转化。 转化后的.py 文件时这样的(没有显示全): ?...首先要从用pyuic5转化后的py文件导入 Ui_Dialog。再以多重继承的方式创建自定义的对话框。在其初始化方法中,调用setupUi(self) 生成用户界面。然后实现必要的功能逻辑。...对话框的界面和功能都完备后,就可以在主窗口的代码中调用。
作为一个程序员,在日常的工作、生活、学习的过程中基本都有很多需要做笔记的地方;做笔记的主要目的之一是为了“温故而知新”,另一个则是为了在下一次遇到的时候,不需要再次耗费精力去找解决方法; 回顾自己之前写的那个主题...新建菜单 添加菜单项 发布到顶部菜单 5.小部件、侧边栏 主题具有文章信息、作者信息、最新文章、最近更新 四个小部件(小部件自带配置,可在添加的时候填写),添加后默认在文章页面的右侧边栏显示。...关闭之前主题自带的小工具 拖入document主题的小部件 保存修改 不保存的话,会显示之前主题的小部件导致样式错乱 6.邮箱SMTP配置 wordpress自带的邮件发送服务不太友好,你可以在主题选项开启主题自带的邮件服务...主题前端优化 文章页右边栏正常高度时,跟随文章滚动,滚动高度超出侧边栏高度时自动悬浮,保持右边侧边栏始终存在元素,不会空白; 访问首页时显示自定义的站点描述,文章页时自动截取文章内容作为网页描述; 优化...20220724更新 首页变成两栏显示 优化了大屏和小屏显示的字体大小 调整了移动端的UI样式 下滑阅读时自动隐藏导航栏,上滑时自动显示。
领取专属 10元无门槛券
手把手带您无忧上云