1

我创建了一个初始化为空的 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()一行,以防仅在显示小部件时发生调整大小,但无济于事。这是什么原因造成的?

4

1 回答 1

0

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

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

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

于 2012-03-01T21:00:04.357 回答