Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
1-82221
Olvin
2003-09-12 11:21
2003.09.25
Как удалить переход на новую при вставке текста в МЕМО ???


3-82146
Васёк
2003-09-03 18:09
2003.09.25
XPman


3-82130
FFF
2003-09-04 12:09
2003.09.25
Привет всем!!, подскажите есть ли похожая командаили функция


3-82060
Alik$
2003-08-22 15:47
2003.09.25
Report как создать свою форму для принтера


3-82077
изм
2003-09-05 12:03
2003.09.25
База Access





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский