【问题标题】:Printing string is different from adding to list, why? [duplicate]打印字符串与添加到列表不同,为什么? [复制]
【发布时间】:2019-07-29 12:16:28
【问题描述】:

我有以下代码:

if len(itemName) < 31:
                while len(itemName) < 31:
                    itemName = itemName+"-"
            itemName = itemName + self.convert_size(info.st_size)
            while len(itemName) < 48:
                itemName = itemName+"-"
            itemName = itemName + datetime.fromtimestamp(info.st_ctime).strftime("%d/%m/%Y %H:%M")
            print(itemName)

打印这个:

这正是我想要的,所有文件的所有大小和日期都从相同位置开始(对齐)。

现在我在打印语句之后添加这一行:self.file_list.addItem(itemName)

这在 Qt 中基本上是将一个项目添加到列表中。 这是它在列表中的外观截图:

如您所见,大小和日期未对齐/从相同位置开始。

我的问题是为什么我该如何解决这个问题? 它打印出来就好了,但是当添加到 QListWidget 时,它看起来不一样。

提前致谢!

【问题讨论】:

  • 使用your_listwidget.setFont(QtGui.QFont("Monospace"))

标签: python python-3.x pyqt pyqt5 qlistwidget


【解决方案1】:

这是Qt使用的字体的问题,它使用的是非等宽字体,即:不同的字符有不同的大小,要使用等宽字体显示所有字符的大小相同,更改将Qt 字体转换为consolas(最好)或Courier New 或任何其他等宽字体。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 2019-08-30
    • 2021-10-21
    • 1970-01-01
    • 2019-06-29
    相关资源
    最近更新 更多