PyQt5基础练习1

0. 本文学习地址

1. PyQt5是由一系列Python模块组成

超过620个类,6000函数和方法。能在诸如Unix、Windows和Mac OS等主流操作系统上运行。

1.1 PyQt5有两种证书

  • GPL
  • 商业证书

2. 实验1 实现简单的窗体

2.1 完整代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial

In this example, we create a simple
window in PyQt5.

author: Jan Bodnar
website: zetcode.com
Last edited: August 2017
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget # 这里引入了PyQt5.QtWidgets模块,这个模块包含了基本的组件。

if __name__ == '__main__':
    app = QApplication(sys.argv) # 每个PyQt5应用都必须创建一个应用对象。sys.argv是一组命令行参数的列表。Python可以在shell里运行,这个参数提供对脚本控制的功能。

    w = QWidget() # QWidge控件是一个用户界面的基本控件,它提供了基本的应用构造器。默认情况下,构造器是没有父级的,没有父级的构造器被称为窗口(window)
    w.resize(250, 150) 
    w.move(300, 300) # 表示从左上角开始的长,表示高
    w.setWindowTitle('Simple')
    w.show() # show()能让控件在桌面上显示出来。控件在内存里创建,之后才能在显示器上显示出来。

    sys.exit(app.exec_())

2.2 关键点解释

show函数执行后,我们进入了应用的主循环

  • 事件处理器这个时候开始工作。
  • 主循环从窗口上接收事件,并把事件派发到应用控件里。
  • 当调用exit()方法或直接销毁主控件时,主循环就会结束。
  • sys.exit()方法能确保主循环安全退出。
  • 外部环境会收到主控件如何结束的信息。

sys.exit(app.exec_())

exec_()之所以有个下划线,是因为exec是一个Python的关键字。

2.3 关于屏幕的长和宽

是以像素px为单位来表示的

3. 实验2 实现带窗口图标的窗体

3.1 完整代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial

This example shows an icon
in the titlebar of the window.

Author: Jan Bodnar
Website: zetcode.com
Last edited: August 2017
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon


class Example(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        # 创建GUI页面
        self.setGeometry(300, 300, 300, 220)
        self.setWindowTitle('Icon')
        self.setWindowIcon(QIcon('web.png'))
        self.show()


# 你想要运行程序,起码写一个入口啊
if __name__ == '__main__':
#     1.实例化应用程序对象
    app = QApplication(sys.argv)
#     2.实例widget对象
ex = Example()
#     3.退出工具
sys.exit(app.exec_())

# if __name__ == '__main__':
#
#     app = QApplication(sys.argv) # 创建应用对象
#     ex = Example() # 创建实例对象
#     sys.exit(app.exec_())

4. 实验3

4.1 完整代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial

This example shows a tooltip on
a window and a button.

Author: Jan Bodnar
Website: zetcode.com
Last edited: August 2017
"""

import sys
from PyQt5.QtWidgets import (QWidget, QToolTip,
                             QPushButton, QApplication)
from PyQt5.QtGui import QFont


class Example(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        QToolTip.setFont(QFont('SansSerif', 10))

        self.setToolTip('This is a <b>QWidget</b> widget')
        # 这里的内容是button进行设置
        btn = QPushButton('Button', self)
        btn.setToolTip('This is a <b>QPushButton</b> widget')
        btn.resize(btn.sizeHint())
        btn.move(50, 50)

        # 这是对窗体进行设置
        self.setGeometry(300, 300, 300, 200)  # 这条语句相当于resize()和move()两条语句
        self.setWindowTitle('Tooltips')  # 设置好窗口的标题
        self.show()


# 我来写一个程序运行入口
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

#
# if __name__ == '__main__':
#
#     app = QApplication(sys.argv) # 每个PyQt5应用都必须创建一个应用对象
#     ex = Example() # 实例化类对象
#     sys.exit(app.exec_()) # 确保主循环结束后正常结束窗体程序


5. PyCharm编程小技巧

5.1 在编写

在这里插入图片描述
的时候,直接输入main即可得到完整代码

  • 编译器会自动生成该内容

5.2 快速输入代码小技巧

  • tab键是代码补全的功能
  • enter键是插入的功能,在cursor的地方插入东西
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王摇摆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值