PyQt5学习(二):Buttons and Events(Signals)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在PyQt5学习(一)基础上,封装一个MyWindow类


#2.py
'''
使用类对行为进行封装,具有条理性
行为:
    创建对象时:初始化建立窗口
    初始化UI界面
    按钮链接的事件&&执行
'''
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication,QMainWindow
import sys

class Mywindow(QMainWindow):
    def __init__(self):
        super(Mywindow,self).__init__()
        self.setGeometry(150,100,1600,900)
        self.setWindowTitle("The system of vehicle dectectng and tracking based on UVA")
        self.initUI()

    def initUI(self):
        self.label = QtWidgets.QLabel(self)
        self.label.setText("本车辆目标检测与跟踪系统非常先进")
        self.label.move(50, 50)

        self.b1 = QtWidgets.QPushButton(self)   #创建一个button
        self.b1.setText("Click me")             #button上的字
        self.b1.clicked.connect(self.clicked)   #按下button触发事件

    def clicked(self):
        self.label.setText("本车辆目标检测与跟踪系统非常先进")
        self.update()

def window():
    app = QApplication(sys.argv)
    win = Mywindow()
    win.show()
    sys.exit(app.exec_())

window()

一、初始化部分

1.self参数

self指的是实例Instance本身,在Python类中规定,函数的第一个参数是实例对象本身,并且约定俗成,把其名字写为self,也就是说,类中的方法的第一个参数一定要是self,而且不能省略。

2.__init__()方法

在python中创建类后,通常会创建一个 __ init__ ()方法,这个方法会在创建类的实例的时候自动执行。__ init__ ()方法必须包含一个self参数,而且要是第一个参数。我们在实例化对象的时候, __ init__ ()方法就已经自动执行了。

3.super(Mywindow, self).__init__()

Python中的super(Mywindow, self).__init__()是指首先找到Mywindow的父类(QMainWindow),然后把类Mywindow的对象self转换为类QMainWindowt的对象,然后“被转换”的类QMainWindow对象调用自己的init函数.

其实简单理解就是子类把父类的__init__()放到自己的__init__()当中,这样子类就有了父类的__init__()的那些东西。

super(Mywindow self).__init__()就是对继承自父类QMainWindow的属性进行初始化。而且是用QMainWindow的初始化方法来初始化继承的属性。

class Mywindow(QMainWindow):
    def __init__(self):
        super(Mywindow,self).__init__()
        self.setGeometry(150,100,1600,900)
        self.setWindowTitle("The system of vehicle dectectng and tracking based on UVA")
        self.initUI()

二、组件Widgets

1.标签label

2.按钮button&&事件events


总结

简单窗口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值