Merhaba Arkadaşlar
Timer nesnesi ile saniye sayarken aynı anda Floatanimation ile animasyon yaptığımda animasyonlarda donma(kesik kesik hareket) gerçekleşiyor. Timer ı durdurduğumda ise animasyonda ki donma ortadan kalkıyor.
Bu konuda tecrübesi olan var mı ?
Floatanimation ile Timer Çalışması
- barisatalay
- Üye
- Mesajlar: 398
- Kayıt: 02 Nis 2013 05:43
- İletişim:
Re: Floatanimation ile Timer Çalışması
Floatanimation hangi kod blogu altında yapıyorsun ? Timer içerisindemi ?
Yeni bloğum: http://brsatalay.blogspot.com.tr/
Re: Floatanimation ile Timer Çalışması
Merhaba,
Timer'ın şöyle bir gıcıklığı var. Timer'ı eğer durdurmazsanız sürekli çalışır. 2 saniyeye ayarlamışsanız, animasyonu başlatır. 2 saniye geçince tekrar başlatır. Şöyle bir kod yazmanız lazım :
Bazen bu da işe yaramayabilir, çünkü animasyonu başlatıp altta tekrar timer'ı açabilir. Bu durumda başlayınca timer'ın süresini arttır.
Kolay gelsin.
Timer'ın şöyle bir gıcıklığı var. Timer'ı eğer durdurmazsanız sürekli çalışır. 2 saniyeye ayarlamışsanız, animasyonu başlatır. 2 saniye geçince tekrar başlatır. Şöyle bir kod yazmanız lazım :
Kod: Tümünü seç
try
Timer1.Enabled := False;
... işlemlerimizi yaptık
finally
Timer1.Enabled := True;
end;
Kolay gelsin.
Re: Floatanimation ile Timer Çalışması
Floatanimation hangi kod blogu altında yapıyorsun ? Timer içerisindemi ?
Hayır. Herhangi bir butona tıkladığımda çalışmasını tetikliyorum.
timer için
Cevaplarınız için teşekkürler ama animasyon süresini kısa tutarak sorunu şimdilik erteledim.
Hayır. Herhangi bir butona tıkladığımda çalışmasını tetikliyorum.
Kod: Tümünü seç
timer1.interval:=1000;
timer1.enabled:=true;
floatanimation1.ppropertyname:='position.y';
floatanimation1.startvalue:=0;
floatanimation1.stopvalue:=100;
Floatanimation1.start;
// şeklinde
Kod: Tümünü seç
var
i:integer=0;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if i>0 then
begin
dec(i);
label1.Text:=inttostr(i);
pie1.EndAngle:=pie1.EndAngle - (360 / 100); // 360 derece yi 100 saniyeye bölüyoruz
end else
timer1.Enabled:=false;
end;