QTextCursor c = textEdit->textCursor();
c.setPosition(startPos);
c.setPosition(endPos, QTextCursor::KeepAnchor);
textEdit->setTextCursor(c);
Ten fragment kodu przesuwa kursor do pozycji początkowej selekcji przy użyciu setPosition
, następnie przenosi go do końca selekcji, ale pozostawia kotwicę selekcji na starej pozycji określając MoveMode
jako drugi parametr.
Ostatnia linia powoduje, że zaznaczenie jest widoczne wewnątrz kontrolki edycji, więc należy ją pominąć, jeśli chce się wykonać pewne manipulacje z zaznaczonym tekstem.
Ponadto, jeśli nie masz dokładnych pozycji, pomocne jest: movePosition
: możesz przesunąć kursor w kierunku various ways, na przykład jedno słowo w prawo lub w dół o jedną linię.
Jak zaktualizować obszar zaznaczenia? –