Автор: Winter_snow
Пример использования:
Выложите на форму TTimer. Установите ему свойство Interval в 10. Затем объявляем глобальную переменную Value
...
var
Form1: TForm1;
Value: Byte = 0;
Теперь прописываем событие OnCreate формы.
procedure TForm1.FormCreate(Sender: TObject);
begin
AlphaBlend := True;
AlphaBlendValue := Value;
end;
И теперь прописываем обработчик таймера OnTimer
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Value:=Value + 1;
if Value <= 254 then
AlphaBlendValue := Value
else
begin
Value := 0;
Timer1.Enabled := False;
end;
end;
При запуске будет наблюдаться плавное появление формы.
Просмотров: 1352
|
0
(14.03.2010) procedure TForm1.FormCreate(Sender: TObject);
begin AlphaBlend := True; AlphaBlendValue :=0; end; procedure TForm1.Timer1Timer(Sender: TObject); Имхо чище, и меньше кода, а вот код на плавное исчезание программы после закрытия: AnimateWindow(Handle, 1000, AW_HIDE or AW_BLEND); |
|
0
(23.11.2009) 3. Антон
(Digy)
так сначала выполнится строка, которая поставит Value в 8, а потом деактивируется таймер
Ответ: Ничего не исчезнет! Все нормально. Value это переменная, а прозрачность формы. Единственное Value:=0 не нужно.
|
|
0
(19.11.2009) 2. Unnamed_user
Почему же исчезнет? Таймер-то самодеактивируется, когда значение Value будет равно 255
|
|
0
(18.11.2009) 1. Антон
(Digy)
поправочки:
1) форма будет полность невидима и прозрачна при значении AlphaBlendvalue = 1, а при значении 0 она будет ещё и неосязаема. 2) если написать как в процедуре по тпймеру, то форма действительно плавно появится, но потои совсем исчезнет |
Copyright © 2008-2010 Программирование на Delphi для начинающих и не только
Полнота авторских прав на все материалы, опубликованные на сервере DelphiDevelop.ru принадлежит их авторам
Перепечатка материалов разрешается с указанием авторства и гиперссылки на первоисточник информации
Хостинг от uCoz