如何将 QTextEdit 中的每一行居中?
How to center every line in a QTextEdit?
我正在使用 PyQt5。
我制作了一个 QTextEdit 并输入了以下代码:
self.descriptionText.setPlainText("First Line\nSecond Line\nThird Line")
self.descriptionText.setAlignment(Qt.AlignCenter)
但这是结果:
如何让每一行居中?
如果您希望每一行都居中,请先设置对齐方式,然后插入文本:
self.descriptionText.setAlignment(Qt.AlignCenter)
self.descriptionText.insertPlainText("First Line\nSecond Line\nThird Line")
您的示例未按预期工作的原因是 setPlainText method clears the current aligment, and the setAlignment 方法仅更改 当前段落的对齐方式 。重置文本后,第一段将是唯一被选中的段落(因为这是光标移动到的位置),因此对齐将仅应用于第一行。鉴于此,另一种修复示例的方法是:
self.descriptionText.setPlainText("First Line\nSecond Line\nThird Line")
self.descriptionText.selectAll()
self.descriptionText.setAlignment(Qt.AlignCenter)
我正在使用 PyQt5。
我制作了一个 QTextEdit 并输入了以下代码:
self.descriptionText.setPlainText("First Line\nSecond Line\nThird Line")
self.descriptionText.setAlignment(Qt.AlignCenter)
但这是结果:
如何让每一行居中?
如果您希望每一行都居中,请先设置对齐方式,然后插入文本:
self.descriptionText.setAlignment(Qt.AlignCenter)
self.descriptionText.insertPlainText("First Line\nSecond Line\nThird Line")
您的示例未按预期工作的原因是 setPlainText method clears the current aligment, and the setAlignment 方法仅更改 当前段落的对齐方式 。重置文本后,第一段将是唯一被选中的段落(因为这是光标移动到的位置),因此对齐将仅应用于第一行。鉴于此,另一种修复示例的方法是:
self.descriptionText.setPlainText("First Line\nSecond Line\nThird Line")
self.descriptionText.selectAll()
self.descriptionText.setAlignment(Qt.AlignCenter)