Pyqt5 通过名字获取控件


在进行pyqt5 开发时,遇到页面中存在10个甚至更多地控件需要赋值或者清空,此时可通过循环的方式对各个控件进行操作。

前提:各控件类型相同,且命名规则一致。
此时可通过利用命名规则循环得到所有控件名称,然后通过控件名称对控件进行操作。

例如: 设计时有10 个QLabel 控件,分别为 self.label_1, self.label_2 … self.label_10; 给这是个控件循环赋值和清空数据

# 注意需要导入控件类型
from PyQt5.QtWidgets import QLabel

# 循环赋值
def init_labels():
    for i in range(10):
        name = "label_" + str(i+1)
        self.findChild(QLabel,name).setText('赋值'+str(i+1))
# 循环清空
def clear_labels():
    for i in range(10):
        name = "label_" + str(i+1)
        self.findChild(QLabel,name).clear()

声明:张先生的博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Pyqt5 通过名字获取控件


选择自己所爱的,然后爱自己所选择的!