【问题标题】:Read "date" from table从表中读取“日期”
【发布时间】:2023-02-12 04:16:00
【问题描述】:

在我使用 Qt Designer 制作的 GUI 中,我有表格、6 列和 5 行(标题不算)。第一列中的日期格式为“DD/MM/YY”。我如何读取这些日期并将其保存到某个变量中,以供将来在 pdf 报告中使用?日期不会在任何操作中使用,只是从表中复制并发送到构建 pdf 报告的函数,因此它们可以是 str 格式。

我试过这个:

T=[]
for i in range(self.ui.table_Level_N.rowCount()):
    T.append(self.ui.table_Level_N.item(i,0))

但收到一些奇怪的文字:

<PyQt5.QtWidgets.QTableWidgetItem object at 0x0000019A24D903A0>

我假设它读取日期但格式不正确。table_Level_N 是我的桌子。

【问题讨论】:

  • QTableWidget.item(row, column) 返回一个 QTableWidgetItem(正如您的输出清楚地显示的那样):请确保您始终阅读您正在使用的类的文档及其函数的返回类型。在这种情况下,QTableWidgetItem 显然不是可打印对象,因为它是一个“抽象对象”,可能(或不)包含一些最终可能显示在 UI 中的文本,因此,请研究文档以了解如何获取该对象显示价值。

标签: python pyqt5


【解决方案1】:

您需要从 QTableWidgetItem 中获取文本并将其附加到列表中。尝试这个:

T = []
for i in range(self.ui.table_Level_N.rowCount()):
    item = self.ui.table_Level_N.item(i, 0)
    T.append(item.text())

这将为您提供所需格式的单元格文本,然后您可以在 PDF 报告中使用这些文本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-14
    • 2013-07-15
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多