Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
QMainWindow |
1.8.2011, 12:02
Сообщение
#1
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0
|
Добрый день!
При выполнении программы (в режиме отладки) вылезает непонятная ошибка: Segmentation fault. Отладчик указывает на эту инструкцию: ui->FirstNameEdit->setText(data.value(i)); ui - мой диалог, построенный по шаблону Qt. Вот описание: Раскрывающийся текст Раскрывающийся текст |
|
|
|
|
panter_dsd |
1.8.2011, 13:02
Сообщение
#2
|
![]() Жаждущий знаний ![]() ![]() ![]() Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3
|
При выходе из цикла, i равно data.count(), то есть if(tags.value(i) == "first-name") приводит к падению.
|
|
|
|
|
QMainWindow |
1.8.2011, 13:56
Сообщение
#3
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0
|
Не, не в этом дело. Я ж говорю, что какой бы метод из FirstNameEdit ни использовал (ui->FirstNameEdit->geometry(); ui->FirstNameEdit->hasFocus(); ui->FirstNameEdit->text(); да любой), получается такая ошибка.
|
|
|
|
|
wiz29 |
1.8.2011, 15:08
Сообщение
#4
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12
|
Цитата(QMainWindow @ 1.8.2011, 14:56) Link Не, не в этом дело. Я ж говорю, что какой бы метод из FirstNameEdit ни использовал (ui->FirstNameEdit->geometry(); ui->FirstNameEdit->hasFocus(); ui->FirstNameEdit->text(); да любой), получается такая ошибка. код сгенерированный по ui-файлу в студию и заодно код где создается объект FileInfoDialog::ui тоже Сообщение отредактировал wiz29 - 1.8.2011, 15:11 |
|
|
|
|
QMainWindow |
1.8.2011, 15:21
Сообщение
#5
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0
|
Вот все:
FileInfoDialog.cpp Раскрывающийся текст FileInfoDialog.h Раскрывающийся текст FileInfoDialog.ui Раскрывающийся текст И его код: Раскрывающийся текст |
|
|
|
|
wiz29 |
1.8.2011, 15:48
Сообщение
#6
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12
|
Судя по коду (на первый взгляд) все корректно, но, возможно, все-таки объект FirstNameEdit по какой-то причине не создан. (просто чудес не бывает, бывают баги либо линковки либо какие-то скрытые)
Если не трудно выкладывайте весь проект архивом посмотрю. |
|
|
|
|
QMainWindow |
1.8.2011, 16:15
Сообщение
#7
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0
|
Проект: Link
Надо вот это: Link. Та, что сверху - не доработано. Тут же в папке есть fb2 файл для теста. Делать так: Файл - Открыть...; Затем Свойства документа. |
|
|
|
|
wiz29 |
1.8.2011, 16:36
Сообщение
#8
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12
|
Цитата(QMainWindow @ 1.8.2011, 17:15) Link Проект: Link Надо вот это: Link. Та, что сверху - не доработано. Тут же в папке есть fb2 файл для теста. Делать так: Файл - Открыть...; Затем Свойства документа. у тебя fileInfoDialog в Parser нигде не инициализируется, соответсвенно , попытка разыменовать "мусор" приводит к краху! Совет: всегда инициализируй все поля объекта в конструкторе! |
|
|
|
|
QMainWindow |
1.8.2011, 16:44
Сообщение
#9
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: 0
|
Он инициализируется в MainWindow (оба диалога). Затем, когда юзер нажимает на Свойтва документа, отсылается сигнал в парсер с номером диалога, после этого вызывается метод fileInfoDialog::getFileInfo, куда отсылается все необходимое.
|
|
|
|
|
Litkevich Yuriy |
1.8.2011, 17:41
Сообщение
#10
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(QMainWindow @ 1.8.2011, 16:56) Link Я ж говорю, что какой бы метод из FirstNameEdit ни использовал а какая разница какой метод, метод тут не причём. Читай сообщение Пантера очень вдумчиво.
|
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 13.12.2025, 19:14 |