我一直在使用 QPlainTextEdit 在我们的应用程序中编辑文本。最近决定我们需要以分页格式显示文本,而不是一致的文本块。经过大量研究,我意识到虽然 QPlainTextEdit 没有任何页面或分页知识,但 QPlainTextDocument 有。
听起来我们内部想要进行分页,但我不知道如何修改 QPlainTextEdit 以在页面中显示文本而不是巨大的字段。
旁注:我知道没关系,但我使用的是 qtruby,而不是普通的 Qt。
我一直在使用 QPlainTextEdit 在我们的应用程序中编辑文本。最近决定我们需要以分页格式显示文本,而不是一致的文本块。经过大量研究,我意识到虽然 QPlainTextEdit 没有任何页面或分页知识,但 QPlainTextDocument 有。
听起来我们内部想要进行分页,但我不知道如何修改 QPlainTextEdit 以在页面中显示文本而不是巨大的字段。
旁注:我知道没关系,但我使用的是 qtruby,而不是普通的 Qt。
我最终在 Qt 论坛上重新提出了这个问题:http: //developer.qt.nokia.com/forums/viewthread/862
他们给了我一个不错的想法,效果很好:
如果你想喜欢 word 中的页面布局,我看到的一种方法是……使用 QGraphicsView,设置场景,设置多个可编辑的 QGraphicsTextItems,并在任何编辑时更新整个文本。你可以将 QTextDocument 设置为这些文本项。
如果您参考 QPrintPreviewWidget 源,也可以使用类似的东西
看看QTextDocument,它包含一个(格式化的)文档,可以在 QTextEdit 中查看和编辑,并且是页面感知的。
您可以使用样式表来修改您想要的 QPlainTextDocument 的外观。
希望有帮助