• 0
Авторизация  
OnePeople

Глюк анимации

Вопросы

procedure TfGeneral.Button4Click(Sender: TObject);
var
  BlurTransition: TBlurTransitionEffect;
  update: TBitmap;
begin
  Button4.Enabled:=false;
  BlurTransition:= TBlurTransitionEffect.Create(fGeneral);
  BlurTransition.Progress:=0;
  BlurTransition.Enabled:=true;
  BlurTransition.Parent:=scbGeneral;
  Update := scbGeneral.MakeScreenshot;
  BlurTransition.Target.Assign(Update);
  TAnimator.AnimateFloat(BlurTransition,'Progress',100,1);
  Update.Free;
  FreeAndNil(BlurTransition);
  Button4.Enabled:=true;
end;

Делаю анимацию, Win 10, размер экрана 1920х1080. При размере формы в пол экрана все отлично, но я делаю полноэкранное приложение и при размере формы приблизительно больше половины экрана, после нескольких раз выполнения анимации, вся анимируемая поверхность становиться белой и происходит резкое увеличение объема оперативной памяти((

Тестовое приложение прилагается, по нажимайте Change раз 5-10(

Тестовое приложение:

Test.rar

Изменено пользователем OnePeople

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 ответа на этот вопрос

  • 0

Думаю, что мало сделать Button4.Enabled:=false;

Попробуй отключить обработчик  TfGeneral.Button4Click(Sender: TObject)

Я думаю, что анимация еще идет, а кнопка уже Button4.Enabled:=true; и ты опять жмешь.

На маленькой поверхности внутрянка видимо успевает, а на большой нет! 

Думаю, надо как то через поток отложенный делать.... 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
37 минут назад, wamaco сказал:

Я думаю, что анимация еще идет, а кнопка уже Button4.Enabled:=true; и ты опять жмешь.

 

Тут код в сообщении не тот, там в тесте animatefloatwait

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу