Python - PyQt - QTable小部件 - 添加行

Ste*_*ess 9 python pyqt qtablewidget

我是PyQt的新手,无论如何仍然有点困惑.我有这样的文本文件结构:

  • 姓名姓名电话电子邮件

其中空格实际上是标签"\ t",当我读取此文件时,我希望填充QTable小部件.

我QTable部件有4列,分别为Name,Surname,Telephone,Email现在它已经没有行,但正如我从文件中读取行和制表分割每行我想添加一个新行,在每一列都包含什么是行.

有人能指出我如何解决这个问题,因为我找不到QTable Widget提供的解决方案或方法,可以让你这样做.

rec*_*dev 14

如果要填充QTableWidget,则需要在文档中插入数据示例之前设置行和列计数(PySide文档优于PyQt).而且你不能只是将由tabs分隔的文本字符串插入到表中,你需要自己准备它,然后QTableWidgetItem通过调用来填充表QTableWidget.setItem.它看起来像这样:

entries = []
with open('data') as input:
    for line in input:
        entries.append(line.strip().split('\t'))

tableWidget.setRowCount(len(entries))
tableWidget.setColumnCount(len(entries[0]))

for i, row in enumerate(entries):
    for j, col in enumerate(row):
        item = QTableWidgetItem(col)
        tableWidget.setItem(i, j, item)
Run Code Online (Sandbox Code Playgroud)

我假设您的data文件包含您的条目,并且tableWidgetQTableWidget实例.

在此示例文件中手动解析,但考虑使用标准csv模块执行此任务.