Здравствуйте, Гость
Воскресенье, 22.10.2017, 23:26
Главная Главная страница форума Регистрация Вход
Новые сообщения Участники форума Правила форума Поиск
Страница 1 из 11
Модератор форума: stalker, Ekz 
Форум » Все о Delphi » Начинающим » ListBox
ListBox
gromdronДата: Суббота, 03.07.2010, 20:33 | Сообщение # 1
Ранг 1
Группа: Проверенные
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Пока писал программу столкнулся с некоторыми проблемами:

1. Как определить номер выделенной строки в ListBox
2. Возможно ли 'разрешить' пользователю пользоваться ctrl для выбора нескольких элементов ?
3. Если возможен пункт 2, то как отследить и удалить все выделенные поля

 
skycarДата: Суббота, 03.07.2010, 21:59 | Сообщение # 2
Ранг 6
Группа: Проверенные
Сообщений: 116
Награды: 5
Репутация: 31
Статус: Offline
1) свойство ItemIndex у листбокса как раз определяет (если выделена самая первая строка, свойство будет равно нулю, не выделена никакая - минус один)
2) логическое свойство MultiSelect листбокса
3) с помощью метода листбокса DeleteSelected();

Code

procedure TForm1.Button1Click(Sender: TObject);
begin
   ListBox1.DeleteSelected;
end;

При этом свойство листбокса MultiSelect должно быть True


Сообщение отредактировал skycar - Суббота, 03.07.2010, 22:08
 
AdminДата: Воскресенье, 04.07.2010, 19:32 | Сообщение # 3
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Насчет третьего добавлю.
Состояние (выделен не выделен) всех элементов хранится в свойстве
Code
ListBox1.Selected

это обычный массив. Например

Code
if ListBox1.Selected[0] = true then  
    showmessage('');


Не оказываю помощь через личные сообщения и ICQ
 
Форум » Все о Delphi » Начинающим » ListBox
Страница 1 из 11
Поиск:

Copyright DelphiDevelop.ru © 2008-2017
Хостинг от uCoz