PyQt(Python+Qt)学习随笔:QTreeWidget中获取指定位置项的itemAt方法

QTreeWidget的itemAt方法通过视口内的坐标点获取对应坐标位置的项,相关调用方法如下:

  • QTreeWidgetItem itemAt( QPoint p)
  • QTreeWidgetItem itemAt(int x, int y)

通过该方法可以获取到视口上对应坐标所在的项,如果对应坐标位置无项则返回None。

示例:

以下代码输出树型部件视口范围内的所有项首列文本:

    def showAllVisibleItem(self):
        height = self.treeWidget.viewport().size().height()
        preItem = None
        for h in range(height):
            item = self.treeWidget.itemAt(0, h)
            if item == preItem or item==None: continue
            preItem = item
            print(item.text(0), f"(0,{h})")

运行界面截图:
在这里插入图片描述
输出信息:

c:\ (0,0)
d:\ (0,12)
d:\work (0,24)
d:\tools (0,36)
d:\study (0,48)
e:\ (0,60)

当部件中的项超出部件视口范围竖直滚动时,上面的代码输出数据会有变化。

老猿Python,跟老猿学Python!

posted on 2020-02-25 19:13  老猿Python  阅读(1871)  评论(0编辑  收藏  举报