Вниз
Скачать: CL | DM;

удаление ячейки у listbox`а и у valuelisteditor`а   Найти похожие ветки 

← →
exkalement ©   (2009-08-19 01:59) [0]

Подскажите пожалуйста:
Как можно узнать какой номер строки выделенный в listbox`е и как удалить из valuelisteditor`а строку с этим же номером?
Поясню:
Я пишу проигрователь и не могу сделать удаления трэка из списка. Путь к трэку, имя и расширение нах-ся в компоненте valuelisteditor а название в listbox`е. valuelisteditor конечно не виден. Поэтому мне надо узнать какая стока выделенна и удалить эту строку.
Если есть другой вариант(работы с listbox и valuelisteditor) я попробую.
Помогите пожалуйста я так еще лет 40 буду думать.


← →
TIF ©   (2009-08-19 04:15) [1]

> Помогите пожалуйста я так еще лет 40 буду думать.

Не надо думать, надо нажимать волшебную кнопку F1 и листать справку :)

Сейчас будет маленькая познавательная "экскурсия"; преподнести сразу готовый ответ на блюдечке = навредить автору темы. Поехали

> Как можно узнать какой номер строки выделенный в listbox`е

TListBox - наследник от своего предка TCustomListBox:
http://InfoDelphi.ru/Help/RADStudio/en/StdCtrls.TListBox.html

TCustomListBox  - наследник TCustomMultiSelectListControl, у которого предок TCustomListControl. Он - предок TWinControl, поэтому мы останавливаемся и изучаем его свойства (properties):
http://InfoDelphi.ru/Help/RADStudio/en/Controls.TCustomListControl_Properties.html

Как ни странно, но оно всего одно - ItemIndex, и как раз то, которое нам нужно :)
http://InfoDelphi.ru/Help/RADStudio/en/Controls.TCustomListControl.ItemIndex.html

В описании (description) разжёваны подробности о возможных значениях


← →
TIF ©   (2009-08-19 04:15) [2]

> и удалить эту строку.

Удалить - delete, строка - row
Смотрим методы (methods) TValueListEditor
http://InfoDelphi.ru/Help/RADStudio/en/ValEdit.TValueListEditor_Methods.html

В глаза бросается DeleteRow:
http://InfoDelphi.ru/Help/RADStudio/en/ValEdit.TValueListEditor.DeleteRow.html

Можно удалить и по-другому:
ValueListEditor.Strings.Delete(i);
Ибо строки Strings - типа TStrings, а у него есть Delete:
http://InfoDelphi.ru/Help/RADStudio/en/Classes.TStrings.Delete.html

PS:
> valuelisteditor конечно не виден

Тогда он конечно же используется не по назначению, ибо это визуальный компонент. Значения можно без проблем хранить и в динамическом массиве. Ещё вариант: использовать ОДИН другой компонент (благо таковые имеются), где можно будет в первом столбце хранить "название", а в остальных "путь/имя/расширение". Само собой видимым сделать только первый столбец. Очевидный плюс - не надо носиться между ДВУМЯ компонентами и синхронно удалять во втором ту строчку, которую удалили в первом.

В общем, есть над чем подумать ;-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
2-1250146359
oldman
2009-08-13 10:52
2009.10.18
Запуск программы, установленной в Виндоус по умолчанию


1-1219767772
Dr.Andrew
2008-08-26 20:22
2009.10.18
При переключении между чекбоксами - ошибка Stack overflow.


6-1208274224
Незнайка
2008-04-15 19:43
2009.10.18
Отправка большого количества писем


15-1250152317
Наиль
2009-08-13 12:31
2009.10.18
Запрет продаж MS Word


15-1250499464
Kolan
2009-08-17 12:57
2009.10.18
Можно ли посмотреть описание события без исходного кода?




   Наверх