Отладка примера приложенияЭтот раздел использует пример TextFinder для демонстрации того, как отлаживать приложения в режиме Отладка. TextFinder считывает текстовый файл в QString и затем отображает её в QTextEdit. Для просмотра QString line и сохранённых в ней данных, установите точки останова и просмотрите данные объекта QString следующим способом:
Измените функцию on_findButton_clicked() чтобы она перемещалась в начало документа и продолжала поиск после того, как курсор достигал конца документа. Добавьте следующий фрагмент кода: void TextFinder::on_findButton_clicked()
{
QString searchString = ui->lineEdit->text();
QTextDocument *document = ui->textEdit->document();
QTextCursor cursor = ui->textEdit->textCursor();
cursor = document->find(searchString, cursor,
QTextDocument::FindWholeWords);
ui->textEdit->setTextCursor(cursor);
bool found = cursor.isNull();
if (!found && previouslyFound) {
int ret = QMessageBox::question(this, tr("End of Document"),
tr("I have reached the end of the document. Would you like "
"me to start searching from the beginning of the document?"),
QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
if (ret == QMessageBox::Yes) {
cursor = document->find(searchString,
QTextDocument::FindWholeWords);
ui->textEdit->setTextCursor(cursor);
} else
return;
}
previouslyFound = found;
}
Если вы соберёте и запустите приведённый выше код, приложение не будет работать правильно из-за логической ошибки. Чтобы обнаружить эту логическую ошибку, пройдите через код, используя следующие кнопки:
[Предыдущий: Отладка] [Следующий: Взаимодействие с отладчиком] X
|
|
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |