从零开始学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

相关文章
|
8月前
|
算法 API C++
【Qt UI】QT 窗口/控件置顶方法详解
【Qt UI】QT 窗口/控件置顶方法详解
581 0
|
5月前
|
前端开发 程序员 API
【Qt】控件介绍
【Qt】控件介绍
Pyside6-第二篇-QPushButton一个普通按钮
Pyside6-第二篇-QPushButton一个普通按钮
309 0
QT TextEdit控件 全面详解
本文详细的介绍了TextEdit控件的各种操作,例如:获取内容、输入控件字符、保持在最后一行添加(自动滚屏)、定时关闭、添加数据换行、向鼠标位置插入一行字符、设置字体颜色属性等操作。 本系列QT全面详解文章目前共有十五篇,本系列文章较为详细的讲述了QT控件的基础操作和使用,也谢谢大家的关注、点赞、收藏。
1607 2
QT TextEdit控件 全面详解
|
8月前
Qt6学习笔记八(其他控件)
Qt6学习笔记八(其他控件)
67 0
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
从零开始学Pyqt5之【控件介绍】(10):QDialog对话框控件
|
数据安全/隐私保护
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件
从零开始学Pyqt5之【控件介绍】(2):QLineEdit控件