![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 22.01.2014
Сообщений: 313
|
![]()
Здравствуйте! Если я создаю список со стилем LBS_MULTIPLESEL и выделяю, скажем, строки, которые не идут подряд, далее я их переношу в другой список, соответственно, из данного списка их нужно удалить..., собственно проблема, если я получаю количество выделенных строк их индексы, всё вроде бы нормально, получаю первую строку, перекидываю её в другой список, но если я удалю строку из списка источника, то дальше я буду работать уже совсем с другими строками, как сделать так чтобы всё работало так как надо, пока что делаю так:
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,363
|
![]()
Удаляйте сначала последний элемент в списке - тогда индексы остальных не изменятся.
|
![]() |
![]() |
![]() |
#3 | ||
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
![]() Цитата:
Т.е. вы получили количество выделенных строк int maxi = SendMessage(hListBox, LB_GETSELCOUNT, 0, 0); Потом получаете массив индексов после int count = SendMessage(hListBox, LB_GETSELITEMS, maxi, (LPARAM)item); А дальше просто перебирайте массив for (int i = count - 1; i >= 0; --i) SendMessage(hListBox, LB_DELETESTRING, item[i], 0); Тут и цикл удаления показан Цитата:
|
||
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,363
|
![]() |
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
![]() |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 22.01.2014
Сообщений: 313
|
![]()
Да, я так и сделал, удалял начиная с последнего элемента массива.
А структура DLGTEMPLATEEX, это, как я понял, структура которую нужно определять самому т.е. она не определена ни в одном из библиотесных файлов и её нужно объявить в своём файле для того что бы с ней работать? Например, так: Код:
Код:
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Филтр в Listbox, удаление выбранной строки в Listbox в таблице | Pavel1155 | Microsoft Office Excel | 1 | 12.02.2019 13:19 |
[РЕШЕНО]: ListBox: как добавить из TStringList текст через 1 строку, чтобы в listBox данные располагались на чётных/нечётных позициях? | pas2 | Помощь студентам | 2 | 21.03.2017 20:54 |
Как изменить стиль стандартного FileListBox на AlphaControl ListBox | Skidxs | Помощь студентам | 2 | 14.06.2013 15:23 |
используя процедуру keypress и фунцию listbox.при нажатии на listbox менялась ее высота | Алекс38 | Общие вопросы Delphi | 1 | 19.09.2012 19:36 |
как добавить в listbox файлы(пишу с помощью bassplayer)(Listbox+opendialog=play) | blackstersl | Общие вопросы Delphi | 11 | 09.06.2010 13:23 |