Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.23;
Скачать: CL | DM;

Вниз

Эффекты появления   Найти похожие ветки 

 
Ultimate ©   (2008-02-20 15:40) [0]

Думаю, это знают не все... И я в том числе...
Как-нибудь можно сделать эффект появления Формы программы после её запуска? К примеру запускаю файл, а он чтобы появился к примеру из ничего, медленно (ну например, задействовать эффект прозрачности, который при запуске равен 0, а после там 5-ти секунд 230?


 
Palladin ©   (2008-02-20 15:46) [1]

у формы, начиная с D6, есть AlphaBlend и AlphaBlendValue, которые работают начиная с w2k... вперед... экспериментируй...


 
Ultimate ©   (2008-02-20 15:58) [2]

да то что они есть, знаю, мне надо их плавно переводить из одного состояния в другое. т.е. из прозрачного в непрозрачный, хатя бы какой код дайте, для изменения во времени...


 
DArk ©   (2008-02-20 16:05) [3]

цикл со Sleep сделай


 
Johnmen ©   (2008-02-20 16:08) [4]


> код дайте

Подают в др.месте.


 
Dennis I. Komarov ©   (2008-02-20 17:25) [5]

Нужен специальный модуль brain.pas


 
{RASkov} ©   (2008-02-20 17:43) [6]

> [0] Ultimate ©   (20.02.08 15:40)


> Эффекты появления

А еще есть AnimateWindow();


 
Вредитель ©   (2008-02-20 18:03) [7]

procedure TForm1.FormCreate(Sender: TObject);
var i:byte;
begin
form1.alphablend:=true;
for  i:=1  to 255 do
begin
form1.alphablendvalue:=i;
sleep(10);
end;
end;


 
Alexander   (2008-02-20 18:05) [8]

Удалено модератором
Примечание: мат


 
Amoeba ©   (2008-02-20 19:18) [9]

Удалено модератором
Примечание: и не цитировать...


 
homm ©   (2008-02-20 21:47) [10]

> [6] {RASkov} ©   (20.02.08 17:43)

+1


 
Ultimate ©   (2008-02-21 12:58) [11]


> Вредитель ©   (20.02.08 18:03) [7]
> procedure TForm1.FormCreate(Sender: TObject);
> var i:byte;
> begin
> form1.alphablend:=true;
> for  i:=1  to 255 do
> begin
> form1.alphablendvalue:=i;
> sleep(10);
> end;
> end;

Как ни странно, но не работает... хотя вроде и код нормальный... Выполняется цикл, с ограничением в 10 милисекунд, каждое действие... Должно работать, но окно просто не окрывается в течении всего этого времени (255x10=2,5 секунды) и потом резко появляется :(


 
Ultimate ©   (2008-02-21 13:03) [12]

эта функция работает, я сделан несколько по корявому, но всеже... Поставил значение Transparent формы 0, и по активации формы (а активируется сразу после запуска прописал этот скрипт... так работает...)


 
KilkennyCat ©   (2008-02-21 13:45) [13]

> [12] Ultimate ©   (21.02.08 13:03)

зуб даю, у меня работать не будет, хотя у меня ХP ;)


 
{RASkov} ©   (2008-02-21 13:51) [14]

> [13] KilkennyCat ©   (21.02.08 13:45)
> зуб даю,

А смайл зачем поставил? ;)


 
MOO   (2008-02-21 14:23) [15]


> я сделан несколько по корявому

Сожалею =)


 
DArk ©   (2008-02-21 18:18) [16]

У меня тож не работает.. Мож кто нормальный вариант предложит?


 
KilkennyCat ©   (2008-02-21 18:28) [17]

> [15] MOO   (21.02.08 14:23)

:)))) да....


 
bagos   (2008-02-21 18:29) [18]


> {RASkov} ©   (20.02.08 17:43) [6]

+1 :)
AnimateWindow(Handle,1000,16)


 
@!!ex ©   (2008-02-21 19:03) [19]

> [13] KilkennyCat ©   (21.02.08 13:45)

Почему?

P.S.
Собственно я хотел написать почему... но в процессе написания пришла мысль, что причин как бы и нет.... например, при установке прозрачности вызывается SetWindowLong, стиль у окна WS_VISIBLE? соответственно вызов этой функции повлечет за собой появление окна, еще ДО вызова Application.Run. Другое дело, что сообщения не обрататываюся, поэтому окно должно быть пустым....
ЪХотя это всего лишь теория, лезть в генофонд и проверять - нет никакого желания.


 
DArk ©   (2008-02-21 19:28) [20]

Угу, окно пустое, только активный компонент, у меня например Edit


 
Ultimate ©   (2008-02-21 19:34) [21]


> MOO   (21.02.08 14:23) [15]
>
> > я сделан несколько по корявому
>
> Сожалею =)

ну это опечатка =)
я сделал несколько по корявому... =)


 
Бегущий человек ©   (2008-02-21 23:42) [22]

А так?
> procedure TForm1.FormCreate(Sender: TObject);
> var i:byte;
> begin
> form1.alphablend:=true;
> for  i:=1  to 255 do
> begin
> form1.alphablendvalue:=i;
> Refresh
> sleep(10);
> end;
> end;


 
homm ©   (2008-02-22 07:06) [23]

> [22] Бегущий человек ©   (21.02.08 23:42)

Зачем что-то еще, если есть [6]. Хватить дурью маиться.


 
Ultimate ©   (2008-02-22 09:53) [24]


> Бегущий человек ©   (21.02.08 23:42) [22]
> А так?
> > procedure TForm1.FormCreate(Sender: TObject);
> > var i:byte;
> > begin
> > form1.alphablend:=true;
> > for  i:=1  to 255 do
> > begin
> > form1.alphablendvalue:=i;
> > Refresh
> > sleep(10);
> > end;
> > end;


также...
а про AnimateWindow(Handle,1000,16) пробовал, но он будто ваще не пашет... либо непонимаю куда его совать... совал на oncreate и на onactivate... но окно сначала просто отсутсвует и потом резко появляется...


 
Ultimate ©   (2008-02-22 09:55) [25]

про AnimateWindow(Handle,1000,16) я ваще ниче не знаю... где нить можно про него что найти?


 
{RASkov} ©   (2008-02-22 10:38) [26]

> [25] Ultimate ©   (22.02.08 09:55)
> где нить можно про него что найти?

Можно.... AnimateWindow + Гугл
МСДН



Страницы: 1 вся ветка

Текущий архив: 2008.03.23;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.014 c
6-1183210878
Kor
2007-06-30 17:41
2008.03.23
Обмен данными через Dial-up модем.


15-1202440145
Slider007
2008-02-08 06:09
2008.03.23
С днем рождения ! 7 февраля 2008 четверг


3-1193337794
DiX
2007-10-25 22:43
2008.03.23
Изменения отображения в DBGrid


2-1203981931
AlexGTI
2008-02-26 02:25
2008.03.23
Окна


15-1202598877
Ламот
2008-02-10 02:14
2008.03.23
Прошу помощи в выборе системы видеонаблюдения.