Pyside2 QTextBrowser overwriteMode不替换旧的tex

2024-09-26 18:14:41 发布

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

我正在使用PySide2包,发现overwriteMode在我的代码中不起作用。以下是我写的:

self.ui.textBrowser.setOverwriteMode(True)
self.ui.textBrowser.insertPlainText('test1\ntest2\ntest3')
self.ui.textBrowser.moveCursor(QTextCursor.Start)
self.ui.textBrowser.insertPlainText('hhh')

Complete source code

我使用Qt Creator设计了我的GUI,QTextBrowser的设置如下所示:

QTextBrowser settings

我得到了以下输出:

Output

如您所见,第一行应该是'hhht1',但它给出了'hhhtest1'。你知道吗

我正在Windows10上用PySide2版本5.11.2测试这个。你知道吗

我是新来Qt的,有人能帮我吗?我错过了什么?谢谢您!你知道吗


Tags: 代码selftrueuiqttest1pyside2insertplaintext
1条回答
网友
1楼 · 发布于 2024-09-26 18:14:41

根据overwriteMode属性的documentation

This property holds whether text entered by the user will overwrite existing text

As with many text editors, the text editor widget can be configured to insert or overwrite existing text with new text entered by the user.

显然overwriteMode只影响用户输入的文本。你知道吗

您可能需要执行以下操作:

text = 'test1\ntest2\ntest3'
self.ui.textBrowser.setPlainText(text)
inserted_text = 'hhh'
text = inserted_text + text[len(inserted_text):]
self.ui.textBrowser.setPlainText(text)

相关问题 更多 >

    热门问题