从零开始学Pyqt5之【控件介绍】(4):QPushButton按钮控件

简介: 从零开始学Pyqt5之【控件介绍】(4):QPushButton按钮控件

QPushButton控件的作用


QpushButton控件的形状是长方形,控件上可以显示文本或者图标。通常用于单击该按钮执行一些命令,或者响应一些事件。常见的有“确认”“申请”“取消”“关闭”“是”“否”等按钮。


QPushButton控件常用的方法

7a28f4f86e984f88b193c99718168df4.png


QPushButton代码示例


# -*- coding: utf-8 -*-
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class Form(QDialog):
  def __init__(self, parent=None):
    super(Form, self).__init__(parent)
    layout = QVBoxLayout()
    self.btn1 = QPushButton("Button1")
    self.btn1.setCheckable(True)
    self.btn1.toggle()
    # 对于需要传参的函数,需要使用lambda表示
    self.btn1.clicked.connect(lambda:self.whichbtn(self.btn1) )
    self.btn1.clicked.connect(self.btnstate)
    layout.addWidget(self.btn1)
    self.btn2 = QPushButton('image')
    # 给按钮添加图标
    self.btn2.setIcon(QIcon(QPixmap("./images/python.png")))
    self.btn2.clicked.connect(lambda:self.whichbtn(self.btn2) )
    layout.addWidget(self.btn2)
    self.btn3 = QPushButton("Disabled")
    # 仅用按钮
    self.btn3.setEnabled(False)
    layout.addWidget(self.btn3)
    self.btn4= QPushButton("&Download")
    self.btn4.setDefault(True)
    self.btn4.clicked.connect(lambda:self.whichbtn(self.btn4))
    layout.addWidget(self.btn4)
    self.setLayout(layout)
    self.setWindowTitle("Button demo")
  def btnstate(self):
    if self.btn1.isChecked():
      print("button pressed" ) 
    else:
      print("button released" ) 
  def whichbtn(self,btn):
    print("clicked button is " + btn.text() ) 
if __name__ == '__main__':
  app = QApplication(sys.argv)
  btnDemo = Form()
  btnDemo.show()
  sys.exit(app.exec_())


运行结果:


1aadef73cf1c4d0cb943fbe04d3f0f53.png

相关文章
|
2月前
|
算法 API C++
【Qt UI】QT 窗口/控件置顶方法详解
【Qt UI】QT 窗口/控件置顶方法详解
59 0
|
9月前
Pyside6-第二篇-QPushButton一个普通按钮
Pyside6-第二篇-QPushButton一个普通按钮
161 0
|
数据安全/隐私保护
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件
从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件
从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件