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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2011, 00:15   #1
Хамяг
Форумчанин
 
Аватар для Хамяг
 
Регистрация: 22.08.2008
Сообщений: 105
По умолчанию плавное появление/исчезновение объекта TImage

На форме есть объект (пускай Image1). В данный момент на канвасе рисуется картинка. Нужно, чтобы при наведении мыши изображение плавно появлялось, а при отведении - плавно исчезало.

Насчёт реализации мысль есть: по таймеру чистим канвас и отрисовываем картинку. Вопрос в том - как задать прозрачность отрисовываемой картинке?
Хамяг вне форума Ответить с цитированием
Старый 04.12.2011, 00:39   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А если использовать TAnimate?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 04.12.2011, 01:14   #3
Хамяг
Форумчанин
 
Аватар для Хамяг
 
Регистрация: 22.08.2008
Сообщений: 105
По умолчанию

Нет, не подходит.

Впрочем, откопал и немного настроил под себя процедурку:

Код:
procedure SetBlend(Image: TImage; Original: TBitmap; Value: Byte);
var
  x,y: Integer;
  pd: PRGBTriple;
  Bit: TBitmap;
begin
  Bit:=TBitmap.Create;
  Bit.Assign(Original);
  Form1.Caption:=IntToStr(Bit.Width)+' '+IntToStr(Bit.Height);
  for y:=0 to Bit.Height-2 do
  begin
    pd:=Bit.ScanLine[y];
    for x:=0 to (Bit.Width-1)*4 div 3 do
    begin
      pd.rgbtBlue:=Round((1-Value/255)*pd.rgbtBlue);
      pd.rgbtGreen:=Round((1-Value/255)*pd.rgbtGreen);
      pd.rgbtRed:=Round((1-Value/255)*pd.rgbtRed);
      Inc(pd);
    end;
  end;
  Image.Picture.Assign(Bit);
  Bit.Free;
end;
на тестовой форме замечательно работает. попробую теперь перенести в проект.
Хамяг вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jquery и плавное появление контента CodeNOT JavaScript, Ajax 3 10.10.2011 09:09
Плавное появление css градиента(Jquery) ZvEr_HaCkEr JavaScript, Ajax 8 11.06.2011 10:15
Плавное появление картинки при наведении мыши на ссылку CodeNOT JavaScript, Ajax 7 28.04.2011 17:15
С помощью методов и свойств объекта осуществляется управление терминалом. Имя (идентификатор) объекта User>lia Общие вопросы Delphi 4 16.01.2009 16:37
Плавное появление формы HAMMAN Общие вопросы Delphi 3 15.05.2008 14:20