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

Вниз

Мультиудаление в ListBox   Найти похожие ветки 

 
Ned ©   (2007-05-06 19:05) [0]

Добрый день!

Пытаюсь организовать удаление сразу нескольких строк в ListBox. loMultiLine - включён (хотя мультивыделение работало и до этого). Пользуюсь вот таким кодом:


procedure TForm1.ListBox1KeyDown(Sender: PControl; var Key: Integer;
 Shift: Cardinal);
begin
if Key = VK_DELETE then
 ListBox1.DeleteLines(ListBox1.SelStart, ListBox1.SelStart+ ListBox1.SelLength);
end;


Но он совешенно не хочет работать! Пр выделении нескольких строк и нажатии Delete почему-то выделяется первая строка, но удаления не происходит! Даже если вместо параметров написать просто (2,5), то и в этом случае строки остаются.
В чём ошибка?

Заранее спасибо!


 
Дмитрий К   (2007-05-06 20:12) [1]

DeleteLines только для edit, memo, richedit.
Для ListBox
procedure Delete( Idx: Integer );


 
Compiler ©   (2007-05-06 21:48) [2]


procedure TForm1.ListBox1KeyDown(Sender: PControl; var Key: Integer;
 Shift: Cardinal);
var
 i:integer;
begin
i:=0;
if key=vk_Delete then
while  i<>Listbox1.Count do
if Listbox1.ItemSelected[i] then
Listbox1.Delete(i) else Inc(i);
end;

Если выделенных строк много выполнеятся значительное время. Не оптимально, зато работает.


 
Ned ©   (2007-05-07 06:18) [3]

Compiler, Дмитрий, большое спасибо! Сделаю через for :)



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

Форум: "KOL";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.048 c
2-1193735286
Первокласник Вася
2007-10-30 12:08
2007.11.25
Не получается с SQL


1-1189005868
andreoman
2007-09-05 19:24
2007.11.25
доступ из подчененной формы к полю формы-создателя


2-1194204107
olegusis
2007-11-04 22:21
2007.11.25
переменные


15-1193194122
Slider007
2007-10-24 06:48
2007.11.25
С днем рождения ! 24 октября 2007 среда


15-1192964581
DVM
2007-10-21 15:03
2007.11.25
Опять анкета не найдена





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский