Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.10.18;
Скачать: 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 вся ветка

Текущий архив: 2009.10.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
2-1250445565
alvonen
2009-08-16 21:59
2009.10.18
TOP_MOST окно перекрывается другими


2-1250149664
BornInUSSR
2009-08-13 11:47
2009.10.18
MDI-интерфейс


15-1250581293
@!!ex
2009-08-18 11:41
2009.10.18
Как растянуть окно VBox на весь экран?


11-1206427258
Петровичъ
2008-03-25 09:40
2009.10.18
MCK для BDS2005-2007


15-1250501563
ford
2009-08-17 13:32
2009.10.18
запись в реестр в ветку HKLM