Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.25;
Скачать: CL | DM;

Вниз

Неожиданная проблема.   Найти похожие ветки 

 
Alibaba ©   (2003-09-15 13:06) [0]

Привет всем.

Столкнулся с неожиданной проблемой работая с TListBox.

У меня есть lbTasks: TListBox, здесь список задач.
Каждая задача имеет определенные параметры, которые отображаются в различных контролах (TEdit, TCaption и т.д.) когда мы двигаемся по списку.

Я устанавливаю активную задачу 2 способами:
Способ 1. Повесил обработчик на событие TListBox.OnClick
Способ 2. Иногда возникает необходимость установить активную задачу не кликая на - lbTasks (например, из других процедур). В это случае я устанавливаю lbTasks.ItemIndex:=Num, где Num - номер той задачи, которую я хочу активизировать.

Все работает.

Теперь развиваем проект.
Я разместил на форме pmListTask: TPopupMenu, сделал там три TMenuItem для добавления, изменения и удаления задач.

Я хочу, что бы была возможность удалить несколько задач.
Устанавливаю lbTasks.MultiSelect:=True и все супер.
Отмечаю задачи, которые хочу удалить, правой кнопкой кликаю, выбираю во всплывающем меню "удалить" - удаляются несколько задач.

НО! ТЕПЕРЬ НЕ УСТАНАВЛИВАЕТСЯ активная задача из других процедур
( Способ 2.).
Тоесть, если lbTasks.MultiSelect=True то не работает lbTasks.ItemIndex:=Num.
Никакой ошибки не выдается, просто ничего не происходит.
Не активируется необходимая запись в списке.

Устанавливаю lbTasks.MultiSelect:=False, работает lbTasks.ItemIndex:=Num. Но теперь невозможно выделить несколько задач для обработки.

Вот такая непонятка?
Подскажите, если кто встречал.


 
Andrey007   (2003-09-15 13:19) [1]

А так и должно быть. Либо MultiSelect=False и можно работать с ItemIndex, либо MultiSelect=True и выделенный элемент надо искать в цикле Seleceted[i].

Вот, например, как я сделал в одной процедуре выделение одного элемента в TListBox"e:

if MultiSelect then Selected[Items.Count-1]:=true
else ItemIndex:=Items.Count-1



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
3-82141
Ditrix
2003-09-03 12:22
2003.09.25
фриварен ли FBPLUS ?


14-82452
Alex1979
2003-09-09 12:43
2003.09.25
Откуда мона скачать Bounds Checker v6.03 Delphi?


14-82503
Сатир
2003-09-04 17:24
2003.09.25
Сказка об Сисадмине


3-82100
DelphiM
2003-09-03 01:51
2003.09.25
Ошибка или я чтото не правильно делаю подскажите


1-82290
Сава
2003-09-14 21:44
2003.09.25
Работа со временем