![]() |
|
![]() ![]() ![]() |
|
OlegIT |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 684 Регистрация: 5.4.2006 Репутация: нет Всего: нет |
Qt5.2 . «Вручную» создал комбобокс, свою модель не использую.
Нужно обновить в нём информацию. Предварительно вызываю:
и получаю ошибку выполнения
Та же ошибка возникает когда я поштучно удаляю строки, на последней удаляемой строке. Очистка пустого комбобокса ошибок не даёт. Комбобоксы в диалоге работает без ошибок. Где я ошибаюсь? |
||||||
|
|||||||
ALEXRAGE |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 17.1.2014 Где: Санкт-Петербург Репутация: нет Всего: нет |
Скорее всего где-то происходит обращение к ComboBox по индексу элемента уже после очистки. Получается выход за пределы массива. Нужно проверить остальной код и там где происходит обращение к элементу поставить проверку, что индекс не больше количества элементов в данный момент.
Это сообщение отредактировал(а) ALEXRAGE - 7.2.2014, 11:20 |
|||
|
||||
OlegIT |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 684 Регистрация: 5.4.2006 Репутация: нет Всего: нет |
Не вижу где это может быть. Свою модель не использую, используется по умолчанию внутренняя, так что с этой стороны проблем не должно быть. Элементы добавляю листом (MyCombo->addItems(QStringList)). Прохожу дебагером, дальше очистки MyCombo->clear(); или удаления элементов поштучно не иду, тут же ошибка.
|
|||
|
||||
ALEXRAGE |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 17.1.2014 Где: Санкт-Петербург Репутация: нет Всего: нет |
Это говорит о том, что в какой-то момент произошел вызов элемента за пределами QList. Либо индекс меньше нуля, либо больше, чем count(). А вот где это присходит по тому куску кода, который вы привели, понять очень сложно. Что там вообще происходит? Что за проект? |
|||
|
||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 3 Всего: 56 |
когда срабатывает assert, ты всегда может увидеть стек вызовов, который к нему привёл. Посмотри его и найдёшь ошибку.
|
|||
|
||||
OlegIT |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 684 Регистрация: 5.4.2006 Репутация: нет Всего: нет |
||||
|
||||
OlegIT |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 684 Регистрация: 5.4.2006 Репутация: нет Всего: нет |
||||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |