QTextposition setposition funktioniert nicht
Verfasst: 5. Oktober 2012 13:15
Hallo,
ich habe in meinem Programm folgende Methode:
Leider funktioniert das setposition in der if-Bedingung zum Schluss nicht, das qdebug gibt immer -1 aus. Hat jemand eine Ahnung, was ich hier falsch mache? Ich bedanke mich schonmal im Voraus für Hinweise.
ich habe in meinem Programm folgende Methode:
Code: Alles auswählen
void FindWidget::find()
{
cursor = mTextpage->textCursor();
if (cursor.anchor() == -1) {
cursor = mTextpage->document()->find(findEdit->text(), cursor, QTextDocument::FindCaseSensitively);
} else {
cursor = mTextpage->document()->find(findEdit->text(), cursor.anchor(), QTextDocument::FindCaseSensitively);
}
// if match is found set background of QLineEdit to white, otherwise to red
QPalette bgPalette( findEdit->palette() );
if ((cursor.position() == -1) && (!findEdit->text().isEmpty())) {
bgPalette.setColor( QPalette::Base, "#ececba");
} else {
bgPalette.setColor( QPalette::Base, Qt::white);
}
findEdit->setPalette(bgPalette);
if (cursor.position() == -1) {
cursor.setPosition(0);
qDebug() << "cursor find: " << cursor.position();
}
mTextpage->setTextCursor(cursor);
}