PyQt5之基础框架解读

 更新时间:2024年02月23日 09:55:02   作者:勤奋的大熊猫  
这篇文章主要介绍了PyQt5之基础框架,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

PyQt5基础框架

前几天为了自己搞一个光学仿真集成GUI界面,于是去研究了一下PyQt5

不得不说这个模块的使用性远远超过了tkinter,强烈推荐,于是准备出一个专栏,记录一下PyQt5学习中遇到的小问题。

这篇先来说说PyQt5创建时候的基础框架。

代码如下

# -*- coding:utf-8 -*-
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication


class MainWindow(QMainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.resize(600, 300)
        self.status = self.statusBar()
        self.status.showMessage("这是状态提示", 10000)
        self.setWindowTitle("MainWindow界面")


if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

以上就是我们PyQt5主界面的基本框架了,先创建一个类,使用这个类对QMainWindow类进行继承。

其他语句的解释

  • self.resize(600,300):对MainWindow进行尺寸调整,横向600个像素点,纵向300个像素点。
  • self.status = self.statusBar():创建一个状态栏对象
  • self.status.showMessage("这是状态提示", 10000):显示状态栏信息10000毫秒,即10秒钟, 其中第一个字符串参数"这是状态提示"是最终显示在状态栏的信息,我们可以自由替换。注意:只有

当我们的鼠标在MainWindow窗口内悬停的时候才会显示该状态信息,并且如果我们想要状态栏一直显示某个信息提示,可以将第二个参数的10000改为-1即可

  • self.setWindowTitle("MainWindow界面"):设定MainWindow主界面的名称。
  • app = QApplication(sys.argv):初始化PyQt5中的各个部分,之后我们就可以调用模块中的各个元素。类似与Pygame模块中的Initialization部分。
  • sys.argv:这个语句存在仅仅是为了将来我们可以在命令行中写入参数进行读取,如果我们不考虑在命令行中进行直接调用,可以将初始化程序改为app = QApplication([])。 
  • window = MainWindow():实例化我们定义好的窗口类对象。
  • window.show():这句话必须存在,否则运行时我们写好的Gui界面不会显示。用来显示我们写好的Gui界面。
  • sys.exit(app.exec_())sys.exit()表示退出程序操作,app.exec_()类似于tkinter模块中定义Gui界面时进行的Mainloop(),即开始执行主循环体,配合sys.exit()退出命令可以在我们退出程序时清空内存,达到洁净模式。

最终运行后的效果

如下:

PyQt5框架BUG

如图所示TreeWidget, 添加了事件监听itemSelectionChanged, 当点击port行不松开鼠标, 鼠标挪动到items后, 触发的是port行的事件, 光标却是停留在items, 然后再点击items时, 不会触发新的事件

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 深入探索Django中间件的应用场景

    深入探索Django中间件的应用场景

    Django中间件是一种可插拔的应用程序组件,可在请求和响应处理过程中修改Django的行为。中间件可用于处理请求、响应、异常等,还可用于实现身份验证、缓存、性能监控等常用功能。通过深入探索中间件的应用场景,可以提高Django应用程序的可扩展性和灵活性
    2023-05-05
  • Python操作HDF5文件示例

    Python操作HDF5文件示例

    这篇文章主要为大家介绍了Python操作HDF5文件示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Python异常对代码运行性能的影响实例解析

    Python异常对代码运行性能的影响实例解析

    这篇文章主要介绍了Python异常对代码运行性能的影响实例解析,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • 用python实现监控视频人数统计

    用python实现监控视频人数统计

    今天教各位小伙伴学习怎么用python实现监控视频人数统计,文中有非常详细的代码示例,对正在学习python的小伙伴有很大的帮助,需要的朋友可以参考下
    2021-05-05
  • Django框架反向解析操作详解

    Django框架反向解析操作详解

    这篇文章主要介绍了Django框架反向解析操作,结合实例形式详细分析了Django框架相关定义、原理、使用方法及操作注意事项,需要的朋友可以参考下
    2019-11-11
  • python性能测试工具locust的使用

    python性能测试工具locust的使用

    这篇文章主要介绍了python性能测试工具locust的使用,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12
  • python3之模块psutil系统性能信息使用

    python3之模块psutil系统性能信息使用

    psutil是个跨平台库,能够轻松实现获取系统运行的进程和系统利用率,这篇文章主要介绍了python3之模块psutil系统性能信息使用,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • python else语句在循环中的运用详解

    python else语句在循环中的运用详解

    这篇文章主要介绍了python else语句在循环中的运用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • python 输出所有大小写字母的方法

    python 输出所有大小写字母的方法

    今天小编就为大家分享一篇python 输出所有大小写字母的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python关于变量名的基础知识点

    python关于变量名的基础知识点

    在本篇文章里小编给大家整理的是关于python关于变量名的基础知识点,需要的朋友们可以参考下。
    2020-03-03

最新评论