【问题标题】:How to paginate a QPlainTextEdit?如何对 QPlainTextEdit 进行分页?
【发布时间】:2010-08-31 01:06:09
【问题描述】:

我一直在使用 QPlainTextEdit 在我们的应用程序中编辑文本。最近决定我们需要以分页格式显示文本,而不是一致的文本块。经过大量研究,我意识到虽然 QPlainTextEdit 没有任何页面或分页知识,但 QPlainTextDocument 有。

这听起来像是在内部我们想要进行分页,但我不知道如何修改 QPlainTextEdit 以在页面中显示文本而不是巨大的字段。

旁注:我知道这没关系,但我使用的是 qtruby,而不是普通的 Qt。

【问题讨论】:

    标签: qt qt4 pagination qtruby


    【解决方案1】:

    看看QTextDocument,它包含一个(格式化的)文档,可以在 QTextEdit 中查看和编辑,并且是页面感知的。

    【讨论】:

    • 我可以对文本进行分页,这不是问题。问题是如何使单个 QTextEdit 看起来像一组页面而不是巨大的文本字段,如果这有意义的话。我已经改写了我的问题以使其更有意义。
    • 我明白了,这是一个有趣的场景。您愿意深入研究 Qt 的代码,还是正在寻找开箱即用的东西?
    • 最好是开箱即用的东西。这是一个非常小的 ruby​​ 应用程序,因此必须包含 C++ 库的自定义编译将是一个皮塔饼。我想我愿意实现我自己的 QTextEdit 版本,尽管我在大多数方面都是 Qt 新手,所以如果可能的话,我宁愿避免这种情况。
    【解决方案2】:

    我最终在 Qt 论坛上重新提出了这个问题:http://developer.qt.nokia.com/forums/viewthread/862

    他们给了我一个不错的想法,效果很好:

    如果你想要喜欢的页面布局 一句话,我看到的一种方式是……使用 QGraphicsView,设置场景, 设置多个 QGraphicsTextItems 这是可编辑的,并更新 任何编辑的整个文本..您可以设置 QTextDocument 到这些文本项..

    类似的东西也可以使用,如果 你指的是 QPrintPreviewWidget 来源

    【讨论】:

      【解决方案3】:

      您可以使用stylesheets 来修改您想要的 QPlainTextDocument 的外观。

      希望有帮助

      【讨论】:

      • 我在 UI 元素上使用了样式表,但我似乎不明白如何设置实际文档的样式。这对我来说没有意义。
      • 尝试使用背景和边框来修改小部件的渲染,使其看起来像一张纸
      猜你喜欢
      • 2021-04-15
      • 2011-12-01
      • 1970-01-01
      • 2011-03-27
      • 2010-10-21
      • 2019-06-09
      • 2016-11-06
      • 2017-12-04
      • 1970-01-01
      相关资源
      最近更新 更多