美文网首页
PyQt5编程(2) : Hollow World程序

PyQt5编程(2) : Hollow World程序

作者: 用电热毯烤猪 | 来源:发表于2018-01-01 15:30 被阅读0次

    # -*- coding: utf-8 -*-

    from PyQt5 import QtWidgets

    import sys

    app = QtWidgets.QApplication(sys.argv)

    window = QtWidgets.QWidget()

    window.setWindowTitle("PyQt5的第一个程序")

    window.resize(300, 70)

    label = QtWidgets.QLabel("Hollo World!")

    btnQuit = QtWidgets.QPushButton("关闭窗口")

    vbox = QtWidgets.QVBoxLayout()

    vbox.addWidget(label)

    vbox.addWidget(btnQuit)

    window.setLayout(vbox)

    btnQuit.clicked.connect(app.quit)

    window.show()

    sys.exit(app.exec_())

    1.PyQt的程序结构

    第1行:# -*- coding: utf-8 -*- 指定程序文件的编码格式

    第2行:载入PyQt5的QtWidgets模块。它包括实现GUI图形界面所需的window,button等。

    第3行:载入Python的sys模块。

    第4行:app = QtWidgets.QApplication(sys.argv)

    创建每一个PyQt5程序都需要的application对象,可以在程序的任何地方通过QtWidgets的qApp属性来访问。例如,可用来打印命令行参数:print(QtWidgets.qApp.arguments()),sys.argv参数是一个命令行参数列表。

    第5行:window = QtWidgets.QWidget()

    使用没有参数的默认构造函数创建一个窗口对象。QtWidget部件是PyQt5中所有用户界面类的父类。

    第6行:window.setWindowTitle("PyQt5的第一个程序")

    设置窗口部件的标题,该标题将在标题栏中显示。

    第7行:window.resize (300, 70)

    设置窗口的client区域大小为300像素宽,70像素高。

    第8行:label = QtWidgets.QLabel("HolloWorld!")

    创建一个QLable对象,居中显示“Hollo

    World!”。本句中使用以html格式文字为参数的构造函数。

    第9行:btnQuit =QtWidgets.QPushButton("关闭窗口")

    创建一个QPushButton对象, 显示的文字为“关闭窗口”。

    第10行:vbox =QtWidgets.QVBoxLayout()

    创建一个.QVBoxLayout 竖向容器对象。所有加到里面的对象将按从上到下顺序排列,而且加入其中的对象宽度也将自动调整到QVBoxLayout的宽度。

    第11,12行:vbox.addWidget(label)

    vbox.addWidget(btnQuit),调用QVBoxLayout的addWidget方法,将前面创建的lablel,btnQuit添加到容器中,同时成为容器的子类对象。

    第13行:window.setLayout(vbox)

    将vbox容器添加到窗口,同时成为window的对类对象。

    第14行:btnQuit.clicked.connect(app.quit)

    给btnQuit对象的clicked信号句柄赋值,本句中是应用程序的退出函数(app.quit),称为槽(slot)。

    第15行:window.show()

    将窗口显示在屏幕上。

    第16行:sys.exit(app.exec_())

    进入该程序的主循环。事件处理从本行语句开始。主循环接受事件消息并将其分发给程序的各个部件。

    相关文章

      网友评论

          本文标题:PyQt5编程(2) : Hollow World程序

          本文链接:https://www.haomeiwen.com/subject/ipetnxtx.html