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

Вниз

Сколько строк вмещает ListBox   Найти похожие ветки 

 
R   (2003-08-06 07:03) [0]

Сколько строк(размер ListBox) вмещает ListBox и есть ли компанент аналогичный вмещающий больше строк, пусть даже менее функциональный.


 
Palladin   (2003-08-06 07:04) [1]

Очень много, достаточно что бы удовлетворить все твои потребности и потребности пользователя...


 
Юрий Зотов   (2003-08-06 07:12) [2]

Насколько помню, в Win9х - 65535 строк. Что, в общем-то и разумно, потому что визуальный список из нескольких десятков тысяч строк юзер и так замучается прокручивать.

А вот у невизуального класса TStringList ограничений нет. Сколько хватит памяти - все Ваше.


 
R   (2003-08-06 07:29) [3]

To Palladin © (06.08.03 07:04) нет не удовлетворит, так как
в него помещаются скажем все файлы(пути)расположенные на диске, а увы их може быть очень много, более 65535.
Конечно можно было бы вывести в RxRichEdit у него даже в 9х очень большой объем но хотелось бы по схожести отображения именно в компанент аналогичный ListBox, есть конечно вариант выводить только видимый в данный момент текст, но тут надо поколдовать, поэтому и спросил про другой компанент.


 
Palladin   (2003-08-06 07:34) [4]


> в него помещаются скажем все файлы(пути)расположенные на
> диске

Может стоит задуматся, а нужно ли это?


 
R   (2003-08-06 07:39) [5]

Речь идет о поисковике, естественно это не нужно но пользователь может поставить скажем в поиске * тогда поисковик выдаст все файлы диска, зачем ограничивать пользователя если он этого хочет?


 
Anatoly Podgoretsky   (2003-08-06 07:40) [6]

Пользователь может сразу идти вешаться


 
Palladin   (2003-08-06 07:45) [7]


> R (06.08.03 07:39)

Выводи в окошко столько сколько видо, а найденое храни в буфере.


 
R   (2003-08-06 07:48) [8]

Буду двигаться по этому пути.


 
unreger   (2003-08-06 08:30) [9]

ItemIndex - integer, вот и ответ
встречал переделки, где ItemIndex - longint


 
Kair   (2003-08-06 08:51) [10]

Я вот посчитал...
У меня всего-то лишь немногим больше 4000 файлов на диске.
А папок немного меньше.
До 65535 ой как далеко.


 
Кот Бегемот   (2003-08-06 09:00) [11]

Ага помню была такая штука как ADInf - делала подобное :)
Но если юзер поменял пару файлов с документами - то что - весь список заново ребилдить ? - а если при этом винт на 120GB ?


 
kull   (2003-08-06 09:44) [12]


> Юрий Зотов © (06.08.03 07:12)

В win98 около 30000 строк не больше. Сам наталкивался на такой случай. Причем это еще зависит от длины строк. А вот в win2000 и WinXP уже больше помещается. То же относится и к Combobox-у.


 
имя   (2003-08-06 11:07) [13]

Удалено модератором


 
Palladin   (2003-08-06 11:10) [14]

каллории, хороший ник, а для не грамотных могу уточнить, что подразумеваемое слово пишется с одной "л"


 
Игорь Шевченко   (2003-08-06 11:15) [15]

Как альтернативу можно использовать Virtual ListView - неограниченное количество строк. Подробности в Delphi\Demos\Virtual ListView\*.*


 
SergeyKatruk   (2003-08-06 13:34) [16]

У меня на 9х в INI-файл (а может в одну секцию его) вмещалось 65535 байт, может и с этим дело обстоит так-же ?


 
xShadow   (2003-08-06 14:13) [17]

Из данной ситуации выкручивался созданием файла, списка на подобие TStringList только хранил это всё на диске, ибо при больших объёмах данные будут всё равно на диске, но в файле подкачки Виндовс. А отображались только видемые строки..


 
seregin   (2003-08-06 14:23) [18]

stringgrid можно использовать... я 4 миллиона засовывал...


 
DeScriptor   (2003-08-07 23:35) [19]

А у меня все было, почему-то, гораздо хуже: под 2к влезало около 2-3 килострок (по 30-40 байт каждая), а остальные просто не выводились (все могло закончиться на половине строки). А мне нужен был весь список извлекаемх файлов...


 
Borealis   (2003-08-08 00:33) [20]


> Игорь Шевченко © (06.08.03 11:15)
> Как альтернативу можно использовать Virtual ListView - неограниченное
> количество строк. Подробности в Delphi\Demos\Virtual ListView\*.*

TListBox тоже можно использовать в виртуальном режиме. Пример:
Создайте новый проект, положите на форму TListBox и привяжите такие обработчики событий:

К OnCreate формы:
procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Align:=alClient;
ListBox1.Style:=lbVirtual;
ListBox1.Count:=1000000000;
end;


К OnData у TListBox"а:
procedure TForm1.ListBox1Data(Control: TWinControl; Index: Integer;
var Data: String);
begin
Data:="Строка №"+IntToStr(Index+1);
end;


Работает с потрясающей скоростью :)


 
Alibaba   (2003-08-08 01:21) [21]

TStringList, помоему, помещает около 4 миллионов записей.


 
Song   (2003-08-08 08:59) [22]

2unreger (06.08.03 08:30)

>>ItemIndex - integer, вот и ответ
>>встречал переделки, где ItemIndex - longint

Integer в Дельфи до 2 мегабайт


 
имя   (2003-08-14 18:32) [23]

Удалено модератором



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

Форум: "Основная";
Текущий архив: 2003.08.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.013 c
1-81641
Алексей Петухов
2003-08-12 13:46
2003.08.25
try except


1-81655
MegaVolt
2003-08-12 10:03
2003.08.25
Как сравнить переменную процедурного типа?


1-81617
Demon-Trouble
2003-08-13 08:05
2003.08.25
Синтаксис AlwaysShowSelect


4-82003
Alexander666
2003-06-18 22:06
2003.08.25
Вопрос по работе с мышью


3-81590
led
2003-07-29 18:35
2003.08.25
Поле Memo вывести на грид





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