pyside6中两个按钮连接一个函数,根据按钮不同来区分函数中的if分支
时间: 2024-10-23 15:09:23 浏览: 23
在PySide6中,为了根据点击的不同按钮执行不同的if分支,你可以为每个按钮分别绑定一个槽函数(Slot),然后在槽函数内部进行条件判断。以下是示例代码:
```python
from PySide6.QtWidgets import QApplication, QPushButton, QWidget
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.button1 = QPushButton('Button 1', self)
self.button2 = QPushButton('Button 2', self)
self.button1.clicked.connect(self.handle_button_click_1)
self.button2.clicked.connect(self.handle_button_click_2)
def handle_button_click_1(self):
if self.sender() == self.button1:
print("Button 1 clicked, executing specific logic for button 1")
def handle_button_click_2(self):
if self.sender() == self.button2:
print("Button 2 clicked, executing specific logic for button 2")
app = QApplication([])
window = MyWindow()
window.show()
app.exec_()
```
在这个例子中,当你点击`button1`时,会触发`handle_button_click_1`函数,如果点击的是`button2`,则触发`handle_button_click_2`函数。由于`sender()`函数返回的是引发信号的对象(在这里是按钮本身),所以可以用来区分不同的按钮。
阅读全文