Alzon Опубликовано 19 октября, 2015 Поделиться Опубликовано 19 октября, 2015 Добавляю в цикле 10000 итемов в TreeView (FMX). Очень долго заполняется. Есть ли какой-нибудь способ для ускорения или другой компонент для отображения дерева? procedure TForm1.Button1Click(Sender: TObject); var I : Integer; Item : TTreeViewItem; begin TreeView1.BeginUpdate; for i := 0 to 99999 do begin item:= TTreeViewItem.Create(nil); with item do begin Parent := TreeView1; Text := 'Item_' + IntToStr(i); end; end; TreeView1.EndUpdate; end; Цитата Ссылка на комментарий
0 kami Опубликовано 19 октября, 2015 Поделиться Опубликовано 19 октября, 2015 (изменено) Сто тысяч элементов Не уверен, что какой-либо компонент, кроме VirtualTreeView способен на такое "быстро", но он - только под винду. Пожалейте пользователя - ему явно не нужно столько элементов. Может, стоит пересмотреть UI? В очень редких случаях нужно отображать более 100 (для десктопа) и 20-30 (для мобильных платформ), юзер все равно не охватит такое количество ни взглядом, ни своей оперативкой И - если у Вас дерево одноуровневое, судя по примеру (понятно, что он упрощен) - может, лучше задействовать listView? Изменено 19 октября, 2015 пользователем kami Цитата Ссылка на комментарий
0 Alzon Опубликовано 19 октября, 2015 Автор Поделиться Опубликовано 19 октября, 2015 Сто тысяч элементов Не уверен, что какой-либо компонент, кроме VirtualTreeView способен на такое "быстро", но он - только под винду. Пожалейте пользователя - ему явно не нужно столько элементов. Может, стоит пересмотреть UI? В очень редких случаях нужно отображать более 100 (для десктопа) и 20-30 (для мобильных платформ), юзер все равно не охватит такое количество ни взглядом, ни своей оперативкой И - если у Вас дерево одноуровневое, судя по примеру (понятно, что он упрощен) - может, лучше задействовать listView? Приложение под винду. VirtualTreeView только под VCL, а мне нужно под FMX. Дерево будет многоуровневым (listView не подходит) и с иконками. Цитата Ссылка на комментарий
0 Alexander Опубликовано 19 октября, 2015 Поделиться Опубликовано 19 октября, 2015 Тогда переработать алгоритм заполнения, первоначально грузить первых два уровня, затем в отдельном потоке остальные уровни Цитата Ссылка на комментарий
0 krapotkin Опубликовано 19 октября, 2015 Поделиться Опубликовано 19 октября, 2015 не нужно даже предполагать возможность скачивания 10000 элементов в экран размером 12 см даже для десктопа это плохая архитектура, а для мобилы - 100% непригодная нужно сразу думать о другом интерфейсе зайди в вк. промотай 200 записей из новостей, все и так еле шевелится... AngryOwl и Alex Bozhko 2 Цитата Ссылка на комментарий
Вопрос
Alzon
Добавляю в цикле 10000 итемов в TreeView (FMX). Очень долго заполняется. Есть ли какой-нибудь способ для ускорения или другой компонент для отображения дерева?
Ссылка на комментарий
4 ответа на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.