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

Вниз

Listbox повторяющиеся записи   Найти похожие ветки 

 
P0tia   (2003-08-27 02:03) [0]

Подскажите код, как в Listbox удалить все повторяющиеся поля?


 
default   (2003-08-27 02:27) [1]

обычный цикл...точнее два...
время удаления критично?


 
P0tia   (2003-08-27 02:47) [2]

С помощью такого удаляет только первый повтор и выдает ошибку.

i:=0;
j:=0;
for i:=0 to ListBox4.Items.Count-1 do
for j:=0 to ListBox4.Items.Count-1 do
if i<>j then
if Listbox4.Items[i] = ListBox4.Items[j] then
begin
edit41.Text := IntToStr(j);
ListBox4.ItemIndex :=j;
Listbox4.DeleteSelected;
end;


 
P0tia   (2003-08-27 02:58) [3]

А лючше чтобы он удалял записи, которые повторяются 1 раз и повторные записи.


 
default   (2003-08-27 03:59) [4]

можно так провернуть

procedure TForm1.Button1Click(Sender: TObject);
var
i: Byte;
SL: TStringList;
begin

SL := TStringList.Create;
SL.Duplicates := dupIgnore;
SL.Sorted := True;
try
for i := 0 to ListBox1.Count - 1 do
SL.Add(ListBox1.Items[i]);
ListBox1.Items := SL
finally
SL.Free;
end;

end;


 
P0tia   (2003-08-27 04:09) [5]

Супер, спасибо, работает. Если не влом распиши по строчки код.


 
default   (2003-08-27 04:19) [6]


procedure TForm1.Button1Click(Sender: TObject);
var
i: Byte;
SL: TStringList;
begin

// у этого класса есть нужная нам возможность
SL := TStringList.Create;
// включить игнор одинаковых строк
// при попытке добавления в список таковых
SL.Duplicates := dupIgnore;
// должно быть установлено для работы "игнора"
SL.Sorted := True;
try
// заносим строки из ListBox-а в созданный класс-список строк
// при этом одинаковые строки не добавляются
for i := 0 to ListBox1.Count - 1 do
SL.Add(ListBox1.Items[i]);
// копируем списко строк из SL в LisBox
ListBox1.Items := SL
finally
// удаляем уже ненужный SL
SL.Free;
end;

end;


 
P0tia   (2003-08-27 04:41) [7]

А можно я тебя еще по эксплоатирую, ты не знаешь где можно найти описание функция для Excel, например выбор листа, Имя листа, фонт разный, сохранить, удалить и т.д.


 
P0tia   (2003-08-27 04:54) [8]

И еще одно. Как узнать сколько строк в базе имеют поле, ну допустим, Primechanie значение Цемент. Нужно получить цифру.
И как сделать чтобы поля с определюнным значением не показывались.


 
default   (2003-08-27 05:02) [9]

ты лучше две разные ветки создай



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
3-58520
Петрович
2003-08-28 11:57
2003.09.18
Как после SQL запроса


7-58937
Spawn
2003-07-05 12:01
2003.09.18
Изучаю PE заголовок...


1-58696
Pavel Oliynik
2003-09-08 11:29
2003.09.18
ассоциативные массивы в памяти есть в Дельфи или как .. ?


7-58954
Volodymyr
2003-06-18 20:14
2003.09.18
com-порт... :)


1-58630
Неумеха
2003-09-05 14:10
2003.09.18
Web-страницы через ShellExecute





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