pyqt5 qgridlayout获取元素位置

北慕城南 提交于 2020-10-04 03:24:54

 

PyQt5中获取控件在QLayout布局中所在的行数列数

 

 

在使用PyQt5库编写界面程序的时候,想要获取布局中某个控件所在的行数和列数。在网上搜索方法无果后,通过查看Qt文档摸索出了一种方法,先记录下来。
先使用函数

PyQt5.QtWidgets.QGridLayout.indexOf(Widget)

获取控件Widget在Layout中的index,(如果在QGridLayout中没有找到Widget,函数会返回 -1)
再使用函数

PyQt5.QtWidgets.QGridLayout.getItemPosition(index)

得到Widget所在位置的信息,这个函数会返回一个tunple:(raw, column, rawSpan, columnSpan)

根据位置获取元素

QGridLayout.itemAtPosition(int row, int column)

这里获取的是item,不是真正的子控件,还需要进一步获取,可能才能获取子控件

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!