Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: CL | DM;

Вниз

Быстрое создание PopupMenu   Найти похожие ветки 

 
Questioner   (2004-04-06 17:08) [0]

Есть проблема - медленно создается TPopupMenu для относительно большого количества элементов (200 и более).
Про то зачем мне это надо лучше не спрашивайте :)

создаю просто:


.......
 pmPages.Items.Clear;
 for i:=0 to FCount-1 do
 begin
   mi := TMenuItem.Create(Self);
//    mi.Caption := IntToStr(i);
   mi.Tag := i;
   mi.OnClick := PopupClick;
   pmPages.Items.Add(mi);
 end;
 P := buMenu.ClientToScreen(Point(0, 0));
 pmPages.Popup(P.X, P.Y);
.......


Работает достаточно быстро, но если раскоментарить присвоение Caption, то жутко тормозит..

Может кто-нибудь предложит пути решения проблемы..


 
TUser ©   (2004-04-06 17:29) [1]

Бедный юзер. Но, если оно действительно так уж нужно - можно попробовать создавать итемы при показывании итемов более высокго уровня. Там они у тебя наверняка не в виде единого меню, а в виде "дерева". Вот, когда менюшка i-го уровня показывается - надо создавать всех ее деток уровны i+1.



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

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.042 c
14-1080728471
syte_ser78
2004-03-31 14:21
2004.04.25
Вопрос к Харьковчанам (если тут такие есть)


1-1081118674
Alex79
2004-04-05 02:44
2004.04.25
Проблема смены шрифтов


9-1067445956
X_Michael
2003-10-29 19:45
2004.04.25
Всплывающее окно удаленного соединения


7-1077650405
Pavel74
2004-02-24 22:20
2004.04.25
если ето doc то открыть его в worde а если ето pdf то в аcrob ...


7-1077806876
Delphin
2004-02-26 17:47
2004.04.25
Вопрос наверное покажется глупым, но как программным путём отключ