PyQt5入门1——PyQt5的安装与Hello World应用

学习前言

搞搞可视化界面哈,虽然不一定有用,但是搞一下。
在这里插入图片描述

简介(From 百度百科)

PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX,Windows和Mac。

PyQt采用双许可证,开发人员可以选择GPL和商业许可。在此之前,GPL的版本只能用在Unix上,从PyQt的版本4开始,GPL许可证可用于所有支持的平台。

安装

PyQt5使用pip安装即可,不太推荐使用其它的方式安装。
使用pip会自动根据你的Python版本来选择合适的 PyQt5 版本,如果是手动下载源码安装很容易出错,pip安装方便快速哈。
由于在国内,使用国内镜像也快一些。

pip3 install PyQt5 -i https://pypi.douban.com/simple

如果anaconda有对应的虚拟环境,需要首先激活虚拟环境再进行安装,Ubuntu下也是如此。
在这里插入图片描述

Hello World

我们创建一个像这样的简单界面,标题是Hello World!内容也是。
在这里插入图片描述

1、窗口构建

a、构建基础类

QWidget类是所有用户界面对象的基类。

窗口构建需要基于QWidget类,我们将它作为父类继承下来,重写其__init__方法,在__init__方法中调用初始化UI的函数。

class Example(QWidget):
    def __init__(self):
        QWidget.__init__(self)
    
        #-----------------------------#
        #   界面显示相关内容
        #-----------------------------#
        self.initUI()

    def initUI(self):
        pass

b、编写UI

上一步并未完成UI编写,我们在这里创建一个简单的UI,一个是标题上的Hello World,一个是PyQt5中的Hello World。
在PyQt5中,使用self.setWindowTitle可以设置UI的标题。
另外,我们可以导入QTextBrowser来写文本,使用.move方法移动文本,使用.resize缩放窗口,具体可参考下方:

def initUI(self):
    #-----------------------------#
    #   初始化标题,界面大小
    #-----------------------------#
    self.resize(640, 480)
    self.setWindowTitle('Hello World!')

    #-----------------------------#
    #   写一段话
    #   放到10,10
    #   拉伸长度为620,200
    #-----------------------------#
    self.text_browser = QTextBrowser(self)
    self.text_browser.move(10,10)
    self.text_browser.resize(620,200)
    self.text_browser.setText("Hello World again!")

2、主程序运行

这个是调用上述创建的Example,细节不必纠结,只需要知道这样便可以调用PyQt5即可。

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

全部代码

import sys

from PyQt5.QtWidgets import (QApplication, QWidget, QTextBrowser)


class Example(QWidget):
    def __init__(self):
        QWidget.__init__(self)
    
        #-----------------------------#
        #   界面显示相关内容
        #-----------------------------#
        self.initUI()

    def initUI(self):
        #-----------------------------#
        #   初始化标题,界面大小
        #-----------------------------#
        self.resize(640, 480)
        self.setWindowTitle('Hello World!')

        #-----------------------------#
        #   写一段话
        #   放到10,10
        #   拉伸长度为620,200
        #-----------------------------#
        self.text_browser = QTextBrowser(self)
        self.text_browser.move(10,10)
        self.text_browser.resize(620,200)
        self.text_browser.setText("Hello World again!")

        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

猜你喜欢

转载自blog.csdn.net/weixin_44791964/article/details/130545018
今日推荐