Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 25.01.2013, 01:27   #1
Volkogriz
Форумчанин
 
Аватар для Volkogriz
 
Регистрация: 11.10.2007
Адрес: Азов Ростовская обл.
Сообщений: 372
Репутация: 33
Вопрос list index out of bounds (-1) при удалении

Доброе время суток!
При удалении строки из LISTBOX вылетает ошибка: list index out of bounds (-1)
Что не так?
PHP код:
Var
LoadPlayList:TStringList;

procedure TForm1.N11Click(SenderTObject);
begin
if ListBox.Items.Text ='' then
N11
.Enabled:=false
else
listbox.Items.Delete(listbox.ItemIndex);
LoadPlayList.Delete(ListBox.ItemIndex);
N11.Enabled:=true;
end
Заранее благодарен!
С уважением,
Volkogriz!
__________________
Не количеством плюсов измеряется репутация человека...!

Последний раз редактировалось Volkogriz; 25.01.2013 в 17:04.
Volkogriz вне форума   Ответить с цитированием
Старый 25.01.2013, 01:35   #2
Человек_Борща
Модератор
Заслуженный модератор
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Адрес: Республика Беларусь, г. Минск
Сообщений: 11,447
Репутация: 2769
По умолчанию

listbox.ItemIndex проверяйте на наличие -1
Человек_Борща вне форума   Ответить с цитированием
Старый 25.01.2013, 02:25   #3
Пепел Феникса
Модератор
Заслуженный модератор
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Адрес: Москва
Сообщений: 20,997
Репутация: 3402

icq: 446843180
skype: phoenix_proger
По умолчанию

я думаю просто после удаления индекс сбрасывается.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума   Ответить с цитированием
Старый 25.01.2013, 10:11   #4
Человек_Борща
Модератор
Заслуженный модератор
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Адрес: Республика Беларусь, г. Минск
Сообщений: 11,447
Репутация: 2769
По умолчанию

не совсем так. На элемент передается фокус но элемент не выбирается, из списка и тогда возникает этот баг.
Человек_Борща вне форума   Ответить с цитированием
Старый 25.01.2013, 10:33   #5
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 17,994
Репутация: 6348
По умолчанию

А чего не так? Все так. Если ошибка на первом Delete, значит ItemIndex=-1. Если же ItemIndex>=0, то на втором Delete ошибка обязательно будет, поскольку после выполнения первого ItemIndex обязательноно в -1 сбросится
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
list index out of bounds 0 при обращении к процедуре Egor2 Общие вопросы Delphi 5 04.05.2012 23:37
При поиске возникает ошибка List index out of bounds (-1) Алекссс БД в Delphi 10 22.07.2011 16:40
List index out of bounds (91) KoBRaAndrey Общие вопросы Delphi 6 25.12.2009 16:29
Ошибка List index out of bounds(0) при использовании запроса AdoQuery ArtInt БД в Delphi 14 15.04.2009 18:35
При запуске ComboBoxEx пишет List index out of bounds -1. dx+ Общие вопросы Delphi 6 12.06.2008 22:32


23:19.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru