Pyqt5:Buttons基础介绍(一)

2023-03-10 13:40:47 浏览数 (2)

Buttons按键也是在Qt中常用的一种控件,Buttons常用的三种按键,pushbutton,checkbox,radiobutton。 UI界面:

其中有三个textBrowser用来显示打印信息,测试信号槽。 pushbutton: 连接信号与槽 connect代码:

代码语言:javascript复制
        self.pushButton.clicked.connect(self.Print)
        self.pushButton_2.clicked.connect(self.Print)

槽函数: 为所有按钮点击槽函数,即所有类型按钮基础点击信号,按下信号,抬起信号都为继承与QAbstractButton Class的信号

代码语言:javascript复制
        self.Num = 0

    def Print(self):
        self.Num  = 1
        self.textBrowser_2.setText("按下" str(self.Num))

释放与抬起连接槽:

代码语言:javascript复制
        self.pushButton.pressed.connect(self.On_Pressed)
        self.pushButton.released.connect(self.On_Released)

释放与按下槽函数:

代码语言:javascript复制
    def On_Pressed(self):
        self.textBrowser_3.setText("pushbutton按下" str(self.Num))

    def On_Released(self):
        self.textBrowser_3.setText("pushbutton抬起")

ButtonGroups: 用来实现按键互斥状态,将按键编组,方便操作。 pushbutton按键自悬:

代码语言:javascript复制
        self.pushButton.setCheckable(True)
        self.pushButton_2.setCheckable(True)

ButtonGroup实例化:

代码语言:javascript复制
self.pushButtonGroup = QButtonGroup(self)

添加按钮:

代码语言:javascript复制
        self.pushButtonGroup.addButton(self.pushButton)
        self.pushButtonGroup.addButton(self.pushButton_2)

连接信号与槽:

代码语言:javascript复制
        self.pushButtonGroup.buttonClicked.connect(self.pushbutton_clicked)

槽函数:

代码语言:javascript复制
    def pushbutton_clicked(self,button):
        self.textBrowser.setText(button.text())

Checkbox与pushbutton一样,源码中有具体实现方法。 Radiobutton自带互斥,没有测试ButtonGroup. 文件源码如下: 源文件

0 人点赞