Eylül, 2009

23 Eyl 2009

ActionScript 3.0 ile Gelişmiş Ses Kontrolü-2

3 Yorum Örnek Uygulamalar, Sınıflar

Gelişmiş Ses Kontrolü

Web sitelerinde kullandığınız seslerin sitenizi yavaşlatmasına izin vermeyin ve kullanıcıya gelişmiş kontrol imkanı vererek sitenizi gezerken keyif almasını sağlayın.

var ses:Sound = new Sound();
var adres:URLRequest = new URLRequest(“sound.mp3″);
var sesKontrol:SoundChannel = new SoundChannel();
var sesDuzeyi:SoundTransform = new SoundTransform();
ses.load(adres);

ses.addEventListener(Event.COMPLETE, baslat);
function baslat(event:Event) {
sesKontrol = ses.play(0,999);
ac_btn.visible = false;
}

kapat_btn.addEventListener(MouseEvent.CLICK, sesKapat);
function sesKapat(event:MouseEvent) {
sesKontrol.stop();
ac_btn.visible = true;
}

ac_btn.addEventListener(MouseEvent.CLICK, sesAc);
function sesAc(event:MouseEvent) {
sesKontrol = ses.play(0,999);
ac_btn.visible = false;
}

eksi_btn.addEventListener(MouseEvent.CLICK, sesAzalt);
function sesAzalt(event:MouseEvent) {
if (sesDuzeyi.volume > 0) {
sesDuzeyi.volume -= 0.1;
sesKontrol.soundTransform = sesDuzeyi;
maske_mc.x -= 6;
}
}

arti_btn.addEventListener(MouseEvent.CLICK, sesArttir);
function sesArttir(event:MouseEvent) {
if (sesDuzeyi.volume < 1) {
sesDuzeyi.volume += 0.1;
sesKontrol.soundTransform = sesDuzeyi;
maske_mc.x += 6;
}
}

maske_btn.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
function surukle(event:MouseEvent){
maske_mc.startDrag(true, new Rectangle(-30,maske_mc.y,60,0));
}

stage.addEventListener(MouseEvent.MOUSE_MOVE, ayarla);
function ayarla(event:MouseEvent){
sesDuzeyi.volume = (maske_mc.x+30)/60;
sesKontrol.soundTransform = sesDuzeyi;
}

stage.addEventListener(MouseEvent.MOUSE_UP, birak);
function birak(event:MouseEvent){
maske_mc.stopDrag();
}

Örnek dosyayı buradan indirebilirsiniz.

20 Eyl 2009

ActionScript 3.0′da releaseOutside Olayını Kullanmak

2 Yorum Olaylar ve Olay İşleyiciler

ActionScript 2.0 da hazırladığımız birçok uygulamada hatalardan kurtulmak için releaseOutside olayını kullanırdık. Ancak ActionScript 3.0 da bu olay artık kullanılmıyor.

Peki biz bu olayı kullanmadan oluşabilecek problemleri nasıl çözeriz?
İş size cevabı…

test_btn.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
function surukle(event:MouseEvent){

}

stage.addEventListener(MouseEvent.MOUSE_UP, birak);
function birak(event:MouseEvent){

}

MOUSE_UP olayını stage üzerinde tanımlayarak bir nevi releaseOutside elde etmiş oluyoruz. Buton üzerinden çıktıktan sonra sahnenin herhangi bir yerinde fare bırakıldığında artık birak fonksiyonumuz çalışacaktır.