QTextDocument(和QTextEdit)没有更新它们的大小?

时间:2012-03-01 20:23:31

标签: c++ qt qtextedit

我创建了一个初始化为空的QTextEdit,然后执行以下代码(TE是指向textedit的指针):

    TE->setText( "this is a test string, it should have a non zero height");
    auto d(TE->document());
    auto s(d->toPlainText());
    auto _s(d->size());
    auto _h(_s.height());

通过调试,我看到字符串s设置正确。但是,_s的大小只是0.为什么以及如何修复。这不应该在任何地方和任何地方剪断工作吗?我还尝试添加一个TE->show()行,以防仅在显示小部件时发生调整,但无济于事。造成这种情况的原因是什么?

1 个答案:

答案 0 :(得分:1)

更改文档中的文本不会更改文档宽度。来自QTextDocument的文档。

  

可以通过设置文本宽度或设置整个页面大小来更改文档大小。

也许调用d-> adjustSize()会让你到达你想去的地方?但请注意,更改文档大小不会更改QTextEdit小部件的大小。