Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.05.2012, 11:13
yujin1st yujin1st вне форума
Прохожий
 
Регистрация: 02.05.2012
Сообщения: 2
Версия Delphi: xe2
Репутация: 10
По умолчанию Создание и отображение большого количества Tlabel run-time

Здравствуйте.
В своем приложении я постоянно создаю и удаляю объекты Tlabel, для отображения данных. Проблема в том, что при отображении уже 20 надписей возникает ощутимая задержка. DoubleBuffered на родительском не помогает. Application.ProcessMessages лишь позволяет наблюдать за процессом создания, а не смотреть на застывшее окно.
Код:
  
// в цикле создаем надписи.
        aLabel:=TLabel.Create(scrlbx);
        labels.Add(aLabel); // список TList для последующей работы 
        with aLabel do begin
          Left:=pointLeft;
          Top:=pointTop;
          Caption:='title';
          parent:=scrlbx; //TScrollBox
        end;
        pointTop:=pointTop+20;
Чуть ускорил дело вынос из цикла создания в другой последующий цикл процесс присвоения родителя. Но проблему не решил.
Код:
for I := 0 to labels.Count-1 do begin
     TLabel(labels[i]).Parent:= scrlbx;
  end;

Выключение и включение параметра Visible до и после циклов также не спасает.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:33.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025