|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Плавное изменение размеров формы
Здравствуйте, как нибудь можно реализовать красивое, плавное изменение формы? заранее благодарен
P.S. таймер не предлогать) |
#2
|
||||
|
||||
Вообще-то
Цитата:
P.S А при чем здесь таймер? Вопрос яснее пожалуйста, и обьяснение, чем таймер не устраивает. Если установить значение Interval таймера <10 то плавнее будет уже некуда. |
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение: | ||
sariman (06.09.2012)
|
#3
|
||||
|
||||
я имею ввиду программно, например когда пытаюсь ширину формы сделать больше)
|
#4
|
|||
|
|||
Че сложного-то? Головой немного подумать всего-то надо...
Код:
procedure TForm1.MyResize(NewWidth : Integer); var I : Integer; N : Integer; S : Integer; begin N := Abs(NewWidth - Self.Width); S := Sign(NewWidth - Self.Width); For I := 1 To N Do Begin Self.Width := Self.Width + S; Sleep(100); // <-- задержка Application.ProcessMessages; // <-- обработать сообщения, чтоб все не висло // Self.Update; // <-- иногда само не отрисовывается. тогда - раскоменнтировать. End; end; Последний раз редактировалось lmikle, 08.09.2012 в 10:05. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
sariman (06.09.2012)
|
#5
|
||||
|
||||
ругается на Sigh
|
#6
|
||||
|
||||
Поиск по папке Source, в будущем всегда выручит. Используй юнит Math.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
sariman (06.09.2012)
|
#7
|
||||
|
||||
использовал math, результата 0
|
#8
|
||||
|
||||
там ошибка, нужно sign а не sigh, все пашет) спасибо) однако не очень плавное)
|
#9
|
||||
|
||||
Уменьши нарастание/убавление на нужную величину, поиграйся с параметром Sleep.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
sariman (06.09.2012)
|
#10
|
||||
|
||||
ок, спасибо, еще есть вопрос, возможно ли сделать label полупрозрачным?
|
#11
|
||||
|
||||
КрасЯвости нравятся? Попробуй AlphaSkins (или как там пишется правильно).
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
sariman (07.09.2012)
|
#12
|
||||
|
||||
о даа нравится)) юзал AlphaSkins подобного там нету) и вообще не хочу использовать компоненты, большинство корявые и весят много
|
#13
|
||||
|
||||
Тогда пиши свои.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
sariman (07.09.2012)
|
#14
|
||||
|
||||
Сам тогда пиши компоненты. Если немного переделать орикинальный TLabel, то можно многое сделать. И прозрачность в том числе.
|
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение: | ||
sariman (07.09.2012)
|
#15
|
||||
|
||||
нету опыта в создании своих компонентов, юзал гугл, нашел WPF, но как я понимаю, пишется на другом языке
|