Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2017, 15:19   #1
Коккс
Пользователь
 
Аватар для Коккс
 
Регистрация: 07.11.2013
Сообщений: 22
По умолчанию плавное появление картинки( Timage) на форму

Добрый день. Подскажите пожалуйста, как в делфи сделать плавное появление картинки( Timage) на форму? Искала в интернете, но безрезультатно.
Коккс вне форума Ответить с цитированием
Старый 17.05.2017, 16:10   #2
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 729
По умолчанию

Ну если только все пиксели какой-нибудь картинки плавно увеличивать от 0 до своего нормального значения через какой-нибудь промежуток времени(например, 20 мс). Для этого нужно использовать TTimer. Я по C++Builder 6 вообще специалист, но в Delphi, по-моему тоже самое.
Cuprum5 вне форума Ответить с цитированием
Старый 17.05.2017, 16:17   #3
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Cuprum5, если вы имеете ввиду альфу, то в Delphi у TImage её нет. Только у формы. А в С++ по умолчанию есть?
Ship_1 вне форума Ответить с цитированием
Старый 17.05.2017, 16:39   #4
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 729
По умолчанию

RGBA есть и в Delphi и в C++Builder 6. Я вообще говорил про основные цветовые каналы: R, G, и B. Но можно и вторым способом сделать - через Alfa-канал. Т.е. Сначала оно будет полностью прозрачное, а потом постепенно(по 10%, например) его делать непрозрачным. Автор темы, выбирайте способ!
Cuprum5 вне форума Ответить с цитированием
Старый 17.05.2017, 16:50   #5
Коккс
Пользователь
 
Аватар для Коккс
 
Регистрация: 07.11.2013
Сообщений: 22
По умолчанию

у меня картинка задается формулой:
begin
for i:=0 to image2.Width do
begin
k:= J+round(A*sin(F*2*pi*i/image2.Width));
Image2.Canvas.Pen.Color:= RGB(k*R, k*G, k*B);
Image2.Canvas.MoveTo(i, 0);
Image2.Canvas.LineTo(i, image2.height);
end;
end;
и она должна плавно по нарастающей появляться.
Коккс вне форума Ответить с цитированием
Старый 17.05.2017, 16:50   #6
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Цитата:
плавно увеличивать от 0
Поэтому и подумал про альфу. RGB же на нуле чёрный, а не прозрачный. Тогда не от нуля, а от фона...
Ship_1 вне форума Ответить с цитированием
Старый 17.05.2017, 16:52   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Коккс, внизу смотрел похожие темы?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 17.05.2017, 16:52   #8
Коккс
Пользователь
 
Аватар для Коккс
 
Регистрация: 07.11.2013
Сообщений: 22
По умолчанию

Напишите пожалуйста код, как сделать через черный фон RGB?

Смотрела уже везде, дельного ничего нет.

Последний раз редактировалось BDA; 17.05.2017 в 18:52.
Коккс вне форума Ответить с цитированием
Старый 17.05.2017, 17:10   #9
oldsnowman
Участник клуба
 
Аватар для oldsnowman
 
Регистрация: 20.02.2015
Сообщений: 1,226
По умолчанию

я немного не в теме делфистов, но что если на твою картинку накладывать через определенный промежуток времени разной прозрачности фоновые картинки.
oldsnowman вне форума Ответить с цитированием
Старый 17.05.2017, 17:13   #10
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 729
По умолчанию

А что картинка выдает? Выложите Screenshot, пожалуйста. Синусоида там или что?

Цитата:
Сообщение от Коккс Посмотреть сообщение
Код:
Image2.Canvas.Pen.Color:= RGB(k*R, k*G, k*B);
- вот здесь как-то нужно домножить на какой-нибудь коэффициент параллельно k и увеличивать его от 0 до 1 с шагом 0.1 от Таймера со временем, например, 500 мс.
Типа такого что-то должно получиться, мне кажется:
Код:
Image2.Canvas.Pen.Color:= RGB(F*k*R, F*k*G, F*k*B);
F - Brightness(Яркость).

Последний раз редактировалось BDA; 17.05.2017 в 18:51.
Cuprum5 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плавное появление картинки sorokolit Общие вопросы Delphi 1 22.01.2015 17:04
плавное появление изображения RevenGGe Общие вопросы Delphi 3 13.04.2013 17:46
плавное появление/исчезновение объекта TImage Хамяг Общие вопросы Delphi 2 04.12.2011 01:14
Плавное появление картинки при наведении мыши на ссылку CodeNOT JavaScript, Ajax 7 28.04.2011 17:15
Плавное появление формы HAMMAN Общие вопросы Delphi 3 15.05.2008 14:20