Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Технологии > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 04.01.2010, 15:57   #1
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
Репутация: 20

icq: 391856236
По умолчанию Проблема с OnActivate

Здравствуйте, у меня возникла следующая проблема. Есть форма. На ней растянут Имейдж. Для того, чтобы форма плавно появлялась был написан следующий код:

Procedure TForm1.FormCreate(Sender: TObject);
Begin
Form1.AlphaBlendValue:=0;
Form1.AlphaBlend:=True;
End;

Procedure TForm1.FormActivate(Sender: TObject);
Var i: Integer;
Begin
For i:=1 To 255 Do
Begin
Form1.AlphaBlendValue:=i;
Application.ProcessMessages;
End;
End;

Procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
Var i: Integer;
Begin
Form1.Enabled:=False;
For i:=254 DownTo 0 Do
Begin
Form1.AlphaBlendValue:=i;
Application.ProcessMessages;
End;
End;

Но тут возникла проблема. При первом открытии форма появляется то плавно, но сперва появляется только одна часть формы, а через пару секунд, открывается пропущенная часть. При последующих открытиях - все нормально. Потом я писал другой код тоже с он Активэйт - и был такой же прикол( Подскажите пожалуйста, как можно избежать появление формы частями или на какое событие можно поменять ОнАктивейт, чтобы добится плавного появления формы

У нас принято оформлять код специальным тэгом - при помощи кнопочки "#" (а не значка #).
Вы не знали? Почитайте правила раздела...
Модератор
__________________
Интересный проект по изучению английского:
Английский в формате путешествия по США

Последний раз редактировалось mihali4; 04.01.2010 в 16:24.
Dennis777 вне форума   Ответить с цитированием
Старый 04.01.2010, 16:26   #2
mihali4
*
Профессионал
 
Регистрация: 22.11.2006
Адрес: Москва
Сообщений: 9,198
Репутация: 2661
По умолчанию

Делайте по OnPaint.
mihali4 вне форума   Ответить с цитированием
Старый 04.01.2010, 18:26   #3
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
Репутация: 20

icq: 391856236
По умолчанию

Цитата:
Сообщение от Dennis777 Посмотреть сообщение

У нас принято оформлять код специальным тэгом - при помощи кнопочки "#" (а не значка #).
Вы не знали? Почитайте правила раздела...
Модератор
Простите, не знал... Впредь буду внимательней
__________________
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума   Ответить с цитированием
Старый 04.01.2010, 18:29   #4
Alex Cones
Trust no one.
Профессионал
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Адрес: In the middle of nowhere.
Сообщений: 6,524
Репутация: 1440
По умолчанию

А зачем такие длинные и непонятные сложности??? AnimateWindow никто не отменял.
__________________
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума   Ответить с цитированием
Старый 04.01.2010, 18:31   #5
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
Репутация: 20

icq: 391856236
По умолчанию

А через он Пэинт оно так не рисует( Проэкт то запускается, но вообще полностью прозрачный фон...
Alex Cones, не подскажите как его юзать?)
__________________
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума   Ответить с цитированием
Старый 04.01.2010, 18:35   #6
Alex Cones
Trust no one.
Профессионал
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Адрес: In the middle of nowhere.
Сообщений: 6,524
Репутация: 1440
По умолчанию

Поиск по форуму "AnimateWindow". Примеров сотни. К тому же анимация не только затухания, плавного появления, но и многие другие.
Читают MSDN.
__________________
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума   Ответить с цитированием
Старый 04.01.2010, 20:30   #7
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
Репутация: 20

icq: 391856236
По умолчанию

Большое спасибо) Анимєйт Виндов работает гораздо лучше, но в самом низу над пуском все равно остается кусочек серой формы((((
__________________
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обойтись без события OnActivate? _Инженер_ Общие вопросы Delphi 4 01.10.2009 17:23
Проблема с рамами/Проблема с ЖД DRAGGER Железо 6 05.01.2009 00:37


00:31.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru