17 июня 2025, 11:08:11

Новости:

Узнай первым о новых темах и ответах в Telegram канале:  @gratis_forum


T

DELPHI: ListBox?

Автор Trahten, 31 января 2006, 14:52:20

0 Пользователей и 1 гость просматривают эту тему.

Trahten

DELPHI: надо просканить весь ListBox и найти символ '.', если он найден (символ) тогда удалить эту строчку из ListBox

Лесандр


for i:=1 to ListBox.Items.Count-1 do
begin
if ListBox.Items.Strings[i]='.' then {Делаем что нам надо}......
end;


Далее можно запомнить индексы всех найденых элементов с '.', а затем поочередно удалить их.....
"Рай на земле не возможен, но мы можем принести в мир кусочек рая и бороться за то, чтобы сохранить его" Дж. Р. Р. Толкин

f_u_EGO

есть ещё способ. по идее, должен работать быстрей, потому что посылаем команду прямо LIstBox'у:

str:='.';
ListBox.Perform(LB_SELECTSTRING, -1, longint(str));
if ListBox.ItemIndex<>-1 then // что-то нашёл
begin
...
end;

будет работать, если строка начинается с str, причём str может быть любой строкой.
"Нет различий, кроме различия в степени, между различными степенями и отсутствием различия." То есть, если перевести это на хороший язык: "Кто же сейчас не пьет?".. /В.Ерофеев "Москва-Петушки"/
Клуб рокеров

Лесандр

м-м-м, кстати, мысль......
можно на цикл прикрутить и выйдет дело:


str:='.';
ListBox.Perform(LB_SELECTSTRING, -1, longint(str));
while ListBox.ItemIndex<>-1 do
begin
ListBox.Delete(ListBox.ItemIndex);
ListBox.Perform(LB_SELECTSTRING, -1, longint(str));
end;
end;

"Рай на земле не возможен, но мы можем принести в мир кусочек рая и бороться за то, чтобы сохранить его" Дж. Р. Р. Толкин



По всем вопросам пишите по адресу gratispp@mail.ru