PyQt5-如何用控件判定对控件类型进行过滤操作
判断是否是控件isWidgetType(),判断父类inherits()。以及随后的应用。
1.控件判断的两个相关函数
1、obj.isWidgetType() 判断对象是否是一个控件,返回布尔值。如果是控件返回True。否则返回False。

2.类型的过滤操作
1、如果一个交互界面有很多类型,很多种控件,这时如果要对某类控件进行单独的改变,就可以利用继承关系来进行过滤。举个例子:首先建立一个窗口框架。

3、获取父控件下的所有子类:使用self.children()函数,返回一个子控件的列表。self是父控件对象。需要注意的是childern()函数只查找下一层子对象。

5、查找子层还可以用findChildren(指定控件类)函数,查找子控件对象,再用inherits()函数过滤。例如:qlist=self.findChildren((QPushButton,QLineEdit))for x in qlist: if x.inherits('QPushButton'): x.setStyleSheet('background-color:yellow') elif x.inherits('QLineEdit'): x.setStyleSheet('background-color:cyan')

后话
1、以上是简单的例子,只为说明问题。利用父子继承关系,经过判断,赛选出需要的控件,为其添加样式。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:58
阅读量:23
阅读量:38
阅读量:40
阅读量:86