Windows 7 SP1
MSVS 2010
Qt 4.8.4
鉴于此代码:
#include <QTGui>
int main(int argc, char *argv[])
{
QTextDocument* text_document = new QTextDocument("testing");
QTextBlock text_block = text_document->begin();
qDebug() << text_block.text() << text_block.blockFormat().lineHeight()
<< text_block.blockFormat().lineHeightType();
}
控制台显示:
"testing" 0 0
问题:为什么 lineHeight 不返回“段落的 LineHeight 属性”?lineHeightType 设置为单个间距。
我显然不明白这一点。当我尝试在输出之前设置行高时,什么也没有发生(lineHeight() 仍然为零):
text_block.blockFormat().setLineHeight(30,QTextBlockFormat::SingleHeight);
需要明确的是,在我的应用程序中,输出到 GUI 窗口时没有任何反应。
甚至尝试:
qDebug() << text_block.text() << text_block.layout()->boundingRect().height();
给我零。