![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
myxa_0 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 18.1.2007 Репутация: нет Всего: нет |
Существует ли быстрый способ проверить, наличае определенного текста в конкретной колонке TListView? Данные не отсортированны.
ViewStyle: vsReport |
|||
|
||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
существует: хранить set текстов конкретной колонки (для всех колонок -- массив моножеств текстов)
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
CatATonik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 95 Регистрация: 12.1.2007 Где: Москва Репутация: 6 Всего: 8 |
А зачем? Чем SubItems не устраивают?
|
|||
|
||||
Sunvas |
|
|||
![]() Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Ну, дык обыкновенным фором пробежаться по всей колонке. В чем проблема-то?? -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
myxa_0 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 18.1.2007 Репутация: нет Всего: нет |
Строк более 1000000 и проверку необходимо осуществлять при добавлении каждой новой строки. Новые записи добавляются довольно большое кол-во за короткий промежуток времени.
Sunvas, Следовательно обыкновенным фором не так уж и быстро получится. |
|||
|
||||
dumb |
|
||||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 13 Всего: 158 |
сохраняй хэши строк в массив. при добавлении: 1. считаешь хэш добавляемой строки (самое простое - crc32) 2. смотрим в массив на предмет "дупа":
3. а собственно все... ![]() массив с хэшами выделять динамически и расширять по мере надобности. по сравнению с фор'ом должно быть резвее, но все равно... 4 мега пробежать - тоже время... |
||||
|
|||||
CatATonik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 95 Регистрация: 12.1.2007 Где: Москва Репутация: 6 Всего: 8 |
При добавлении 1M строк в ListView скорость поиска вообще не будет иметь ни какого значения, т.к. он просто не переваривает подобные объемы, уже после нескольких тысяч он начинает тормозить так, что не приведи господь. Используй что-ить другое, VirtualTreeView например.
|
|||
|
||||
CatATonik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 95 Регистрация: 12.1.2007 Где: Москва Репутация: 6 Всего: 8 |
Немного не потеме: выводить пользователю 1000000 строк, это безобразие. Что он там может увидеть? Нужно делать фильтры, группировки и т.д. Кроме того, если средний размер строки ~200 байт 1Mb * 200B = 200Mb!!!
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |