QPlainTextEdit - 绝对大小

QPlainTextEdit - absolute size

本文关键字:QPlainTextEdit      更新时间:2023-10-16

我需要得到QPlainTextEdit的绝对高度,就好像它不是QAbstractScrollArea一样。我已经花了大约一个小时来寻找它。我搜索了QPlainTextEditQTextDocumentQAbstractScrollArea,尝试了名称中带有大小的每个属性。

我希望除了将blockCount()乘以blockBoundingRect(firstVisibleBlock()).height()并添加到内容偏移量之外,还有其他方法。(块的大小相同。

提前谢谢你。

我认为这就是你要找的:http://qt-project.org/forums/viewreply/21633/

QScrollArea有一个视口。视口是可视区域的大小。因此,如果您的QScrollArea名为 foo ,则需要执行以下操作:

 foo.viewport().size();

这将返回您想要的QSize .

您可以在派生类中这样做:

int TextEditor::contentHeight() const
{
    return contentOffset().y() + fontMetrics().lineSpacing() * blockCount();
}