for ( QTextBlock block = view->document()->begin();
block.isValid(); block = block.next(), ++lineCount ) {
QTextCursor tc = QTextCursor(block);
QTextBlockFormat fmt = block.blockFormat();
if(fmt.topMargin() != 1 || fmt.bottomMargin() != 1) {
fmt.setTopMargin(1);
fmt.setBottomMargin(1);
tc.setBlockFormat( fmt );
}
上面的代码 如何是按了回车产生的换行行间距确实会变大,但是如果是输入一段很长的内容,超过的内容会自动跑到下一行,这样生成的换行 行间距就不会变大。
应该怎么做呢? QTextEdit不会是没有这样的功能吧?
4 个解决方案
#1
QTextEdit edit;
edit.setText("fdgfdsgdsg");
edit.setPlainText(edit.toPlainText() + "\n\n\n\n");
edit.moveCursor(QTextCursor::End);
edit.setText("fdgfdsgdsg");
edit.setPlainText(edit.toPlainText() + "\n\n\n\n");
edit.moveCursor(QTextCursor::End);
#2
通过 "\n\n\n\n"增加\n数来调整换行间距,
#3
我做的是富文本编辑器 就像word那样的 你们这明显没办法实现。
#4
可以看看 QTextBlockFormat、 QTextFormat等QTextxxx相关的类;
#1
QTextEdit edit;
edit.setText("fdgfdsgdsg");
edit.setPlainText(edit.toPlainText() + "\n\n\n\n");
edit.moveCursor(QTextCursor::End);
edit.setText("fdgfdsgdsg");
edit.setPlainText(edit.toPlainText() + "\n\n\n\n");
edit.moveCursor(QTextCursor::End);
#2
通过 "\n\n\n\n"增加\n数来调整换行间距,
#3
我做的是富文本编辑器 就像word那样的 你们这明显没办法实现。
#4
可以看看 QTextBlockFormat、 QTextFormat等QTextxxx相关的类;