Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
| DimaPetrov |
23.04.2007 5:15
Сообщение
#1
|
|
Группа: Пользователи Сообщений: 1 Пол: Мужской Репутация: 0 |
Код for i:=0 to Form1.ControlCount-1 do if (Form1.Controls[i] is Tdot) then begin v:=(Form1.Controls[i] as Tdot); v.left:=Trunc((v.real_X-X_tekmap)/Scale_tekMap); {1} v.top:=Trunc((v.real_Y-y_tekmap)/Scale_tekMap); {1} На Form1 находится 1000 компонентов TDot. Этот цикл выполняеться за 3 секунды. Без строки {1} 1.5, без {1} и {2} милисекунды. Как это можно ускорить? Сообщение отредактировано: DimaPetrov - 23.04.2007 5:18 |
![]() ![]() |
| klem4 |
23.04.2007 14:25
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Цитата На Form1 находится 1000 компонентов TDot А что это еще за компоненты такие ? Это экземпляры твоего собственного класса ? Так может тогда их проще объеденить в массив и проходить сразу по нему ? -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
DimaPetrov Требуется помощь в ускорение исполнения кода 23.04.2007 5:15
hardcase На Form1 находится 1000 компонентов TDot. Этот цик... 23.04.2007 20:32
volvo Пересчет Alignment-а на время цикла отключить не п... 23.04.2007 20:50
Sergy А вот эта
строчка вообще не нужна. Если уже прове... 25.04.2007 22:21![]() ![]() |
|
Текстовая версия | 8.12.2025 12:44 |