からのブロック/行の削除に苦労していQTextEdit
ます。以下のコードは(?)動作するはずですが、私には不明な理由で無限ループに陥ります。が編集されている疑いがnext()
あり、previous()
歓迎されません。QTextDocument
QTextBlock block = document()->begin();
while (block.isValid()) {
if (to_do_or_not_to_do(block)) {
QTextCursor cursor(block);
cursor.select(QTextCursor::BlockUnderCursor);
cursor.removeSelectedText();
}
block = block.next();
}
QTextDocument::findBlockByNumber()
上記と同じ方法でブロックの使用と削除を繰り返してもうまくいきませんでした。
すべてのブロックを繰り返し処理し、必要に応じてそれらを削除する方法について、誰かが正しい方向に向けてくれれば幸いです。
PS
私の特定のケースでは、1ブロック= 1行です。
Qt 4.6.2、Ubuntu 10.04 x64