2015-01-06 27 views
0

我需要得到絕對高度爲QPlainTextEdit,好像它不在QAbstractScrollArea中。我已經花了大約一個小時才找到它。我搜索了QPlainTextEdit,QTextDocumentQAbstractScrollArea,嘗試了每個名稱中包含大小的屬性。QPlainTextEdit - 絕對大小

我希望還有其他的方法可以將blockCount()乘以blockBoundingRect(firstVisibleBlock()).height()並添加到內容偏移量。 (塊是相同的大小。)

在此先感謝您。

+0

似乎是http://stackoverflow.com/questions/5258665/how-to-set-number-of-lines的副本-for-an-qtextedit – user2672165

+0

@ user2672165我會檢查出來的。我的配方至今也運作良好。 – LogicStuff

回答

0

你可以像下面這樣做在你的派生類:

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

我認爲這是你在找什麼:http://qt-project.org/forums/viewreply/21633/

QScrollArea有一個視口。視口是可視區域的大小。所以,如果你QScrollArea被命名爲foo,你要做到這一點:

foo.viewport().size(); 

將返回你想要的QSize

+0

我不想看到,我想絕對 - 超出視口範圍。 – LogicStuff

+0

@LogicStuff這應該保留在您的原始對象中。所以如果你的'QPlainTextEdit'被命名爲'bar',你應該可以做到:'bar.size();' –

+0

這是相同的(加上水平滾動條的高度我想)。 – LogicStuff