热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PyQt5基础框架

原标题:PyQt5基础框架前几天为了自己搞一个光学仿真集成GUI界面,于是去研究了一下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=Nonewww.yii666.com):
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_文章来源地址53036.html())

以上就是我们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.awww.yii666.comrgv):初始化PyQt5中的各个部分,之后我们就可以调用模块中的各个元素。类似与Pygame模块中的Initialization部分。
sys.argv:这个语句存在仅仅是为了将来我们可以在命令行中写入参数进行读取,如果我们不考虑在命令行中进行直接调用,文章来源地址53036.html可以将初始化程序改为app = QApplication([])
w文章来源站点https://www.yii666.com/indow = MainWindow():实例化我们定义好的窗口类对象。
window.show():这句话必须存在,否则运行时我们写好的Gui界面不会显示。用来显示我们写好的Gui界面。
sys.exit(app.exec_())sys.exit()表示退出程序操作,app.exec_()类似于tkinter模块中定义Gui界面时进行的Mainloop(),即开始执行主循环体,配合sys.exit()退出命令可以在我们退出程序时清空内存,达到洁净模式。

最终运行后的效果如下:、
MainWindow
码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

来源于:PyQt5 基础框架


推荐阅读
  • 本文介绍了pack布局管理器在Perl/Tk中的使用方法及注意事项。通过调用pack()方法,可以控制部件在显示窗口中的位置和大小。同时,本文还提到了在使用pack布局管理器时,应注意将部件分组以便在水平和垂直方向上进行堆放。此外,还介绍了使用Frame部件或Toplevel部件来组织部件在窗口内的方法。最后,本文强调了在使用pack布局管理器时,应避免在中间切换到grid布局管理器,以免造成混乱。 ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • 如何优化Webpack打包后的代码分割
    本文介绍了如何通过优化Webpack的代码分割来减小打包后的文件大小。主要包括拆分业务逻辑代码和引入第三方包的代码、配置Webpack插件、异步代码的处理、代码分割重命名、配置vendors和cacheGroups等方面的内容。通过合理配置和优化,可以有效减小打包后的文件大小,提高应用的加载速度。 ... [详细]
  • 当我在doWork方法中运行代码时,通过单击button1,进度条按预期工作.但是,当我从其他方法(即btn2,btn3)将列表传递给doWork方法时,进度条在启动后会跳转到10 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 基于dlib的人脸68特征点提取(眨眼张嘴检测)python版本
    文章目录引言开发环境和库流程设计张嘴和闭眼的检测引言(1)利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行68个点标定 ... [详细]
  • 使用Flutternewintegration_test进行示例集成测试?回答首先在dev下的p ... [详细]
  • 四、连接屏幕流各位读者好!我们已经到了应用开发的一个重要阶段——连接屏幕。如您所知,我们在上一章 ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了一种在PHP中对二维数组根据某个字段进行排序的方法,以年龄字段为例,按照倒序的方式进行排序,并给出了具体的代码实现。 ... [详细]
  • 本文介绍了如何使用PHP代码将表格导出为UTF8格式的Excel文件。首先,需要连接到数据库并获取表格的列名。然后,设置文件名和文件指针,并将内容写入文件。最后,设置响应头部,将文件作为附件下载。 ... [详细]
author-avatar
忧之灵_435
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有