pyqt5 textedit删除移动到指定lin的行

2024-05-15 10:30:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我想设置PYQT-Qtextedit小部件,并使用它监视另一个应用程序活动日志(如Linux上的tail-f)。长期以来,我担心它运行太长时间,并使用大量的ram来构建文本。是否可以设置一个限制,以便删除移动过x行的文本?从我发现它似乎需要定制工作,我想找到一个限制器设置,如果存在的话。在


Tags: 文本应用程序部件linuxpyqtramtail限制器
1条回答
网友
1楼 · 发布于 2024-05-15 10:30:50

QPlainTextEdit是一种支持纯文本的高级查看器/编辑器。它被优化为处理大型文档并快速响应用户输入。在

为了限制可见行的数量,您必须使用setMaximumBlockCount,在下面的示例中,我展示了它的用法:

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

counter = 0

def addText():
    global counter
    w.appendHtml("<font size=\"3\" color=\"red\">{}</font>".format(counter))
    counter += 1

if __name__ == "__main__":
    app = QApplication(sys.argv)
    w = QPlainTextEdit()

    timer = QTimer()
    timer.timeout.connect(addText)
    timer.start(1000)
    w.setMaximumBlockCount(4)
    w.show()
    sys.exit(app.exec_())

如果你想使用字体,你可以很容易地使用HTML。在

相关问题 更多 >