QPlainTextEdit — абсолютный размер

Мне нужно получить абсолютную высоту QPlainTextEditкак будто его нет в QAbstractScrollArea, Я уже потратил около часа, чтобы выяснить это. Я искал QPlainTextEdit, QTextDocument а также QAbstractScrollArea, пробовал каждое свойство с размером в его названии.

Я надеюсь, что есть другой способ, чем умножить blockCount() от blockBoundingRect(firstVisibleBlock()).height() и добавить к содержанию смещение. (Блоки одинакового размера.)

Заранее спасибо.

0

Решение

Я думаю, это то, что вы ищете: http://qt-project.org/forums/viewreply/21633/

QScrollArea имеет видовой экран. Область просмотра — это размер видимой области. Так что если ваш QScrollArea назван fooвы захотите сделать это:

 foo.viewport().size();

Который вернет вам желаемое QSize,

0

Другие решения

Вы можете сделать это так в своем производном классе:

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

По вопросам рекламы [email protected]