|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Уменьшение Panel1 программно
Подскажите как изменить Panel1 программно.
Допустим.Уменьшить до определёного размера и поставить дапустим поцентру его. |
#2
|
|||
|
|||
Установкой свойств Top, Left, Width и Height.
Да, еще якоря и выравнивание должны позволять это сделать. |
#3
|
||||
|
||||
Чтобы поставить по центру:
Код:
Panel1.left:=(Form1.width div 2)-(Panel1.width div 2); Panel1.top:=(Form1.height div 2)-(Panel1.height div 2); |
#4
|
|||
|
|||
Угу, только оптимальнее будет так:
Код:
Panel1.left:=(Form1.width - Panel1.width) div 2; Panel1.top:=(Form1.height - Panel1.height) div 2; |
#5
|
||||
|
||||
А быстрее и оптимальнее так:
Код:
Panel1.left:=(Form1.width - Panel1.width) shr 1; Panel1.top:=(Form1.height - Panel1.height) shr 1; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
Согласен
Но тогда еще вот это: Код:
With Panel1 Do Begin left:=(Self.width - width) shr 1; top:=(Self.height - height) shr 1; End; Убираем 3 из 4 операций разрешения ссылки PS. про Self - не уверен, но есть подозрение, что это тоже более оптимально, чем обращение к переменной. Страдалецъ, думаем дальше - как еще можно оптимизировать |
#7
|
||||
|
||||
Но так получилось несколько больше писанины, что не радует.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#8
|
|||
|
|||
Зато бинарный код компактнее и быстрее.
|
#9
|
||||
|
||||
С этим согласен. Думаю здесь можно остановится.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#10
|
|||
|
|||
Наверное, да. Дальше - только если на асме переписать, но не факт, что даже так станет быстрее
|