在PyQt5中,可以使用sender()
方法来获取当前关注的控件对象名称。
sender()
方法是一个QObject类的方法,用于获取发送信号的对象。在信号与槽机制中,当一个控件发送信号时,可以通过sender()
方法获取到发送信号的控件对象。
以下是一个示例代码,演示如何在PyQt5中获取当前关注的控件对象名称:
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("获取控件对象名称示例")
self.setGeometry(300, 300, 300, 200)
button1 = QPushButton("按钮1", self)
button1.setObjectName("button1")
button1.clicked.connect(self.buttonClicked)
button2 = QPushButton("按钮2", self)
button2.setObjectName("button2")
button2.clicked.connect(self.buttonClicked)
def buttonClicked(self):
sender = self.sender()
objectName = sender.objectName()
print("当前关注的控件对象名称:", objectName)
if __name__ == "__main__":
app = QApplication([])
window = MyWindow()
window.show()
app.exec_()
在上述代码中,我们创建了两个QPushButton按钮,分别设置了不同的对象名称。当点击按钮时,会调用buttonClicked()
方法,通过sender()
方法获取当前关注的控件对象,然后使用objectName()
方法获取控件对象的名称,并打印输出。
这样,我们就可以在PyQt5中获取当前关注的控件对象名称了。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云