Bu günden itibaren belirli aralıklarla size Flash5 hakkında makaleler yayınlıyacağız.anlatımımıza flash nedir? ile başlayıp flash ileri programlamaya kadar devam etmeye çalışacağız... Size ilginç bir araştırma sonucunu söylemek istiyorum Ağustos 2000 tarihinde flash kullananlarin sayisi 248 milyondu. Bu sene ise yaklaşık 500 milyon olması bekleniyor Flash Nedir? Flash, Macromedia firmasının 1997 yılında Future Splash Animator satın alarak vektör uygulamalarının WWW üzerinde geliştirilmesi için tasarlanmış bir arayüz programıdır. Üretici firma, ilköce Flash 2, 1997 yılında Flash 3, 1999 yılında Flash4 ve 2001 yılında Flash5 versiyonunu site tasarımcılarının hizmetine sundu. Çıktığı yıldan beri yoğun rağbet gören bu arayüz, gösterdiği performansla önümüzdeki yıllarda da adından söz ettirecek gibi görünüyor. Web sayfalarına hareket kazandıran ve yeni versiyonları ile de java yı destekleyen Flash çalışma tekniği olarak vektör grafiği kullanıyor. Bütün bunların yanında içinde minik bir programla dilini de barındıran Flash yazılan scriptleri derleyebiliyor. Autocad, Corel Draw vb programlar kullananlar iyi bilirler, verilen her komut bilgisayar ekranında bir vektör olarak işlenir. Karmaşık çizimlerle uğraşıp herhangi bir yerde yanlış yapmak tabii ki içten bile değildir. Bu hatayı düzeltmek için vektör çalışanlar sadece hatalı vektörü ya da vektörleri kaldırarak yanlışlığı düzeltebilir ama bitmap bazında çalışanlar yoğun işlemlerde yanlış bir nesneyi kaldırmak için daha fazla uğraş verebilirler Ayrıca vektörler fonksiyon bazında çalışabilme özelliğine sahip olup, hareket olarak da daha esnektirler. Nesneler, Web sayfalarına Flash ile yerleştirildikleri zaman, üzerlerine zoom(yakınlaştırma) yapılabilmesini de desteklemektedirler. Bu destek, resimin netliğinin zoom yapıldığında da aynı kaliteyi verebilmektedir. Flash ın başka bir özelliği de, temelde vektör olarak çalışması ve bitmap çalışmaları da desteklemesidir. Yani Flash sayesinde bir bitmap resmi vektöre çevrilebilir. Bu teknik çok gelişmese de kullanıldığında güzel sonuçlar verebilmektedir. Flash ı kullandıkça sizlerde göreceksiniz ki, yoğun bir şekilde vektör çizim içeren çalışmalar gösterdikleri performansa orantılı olarak, bitmap resimlere göre daha az yer
kaplayacaklardır. Flash ın kullanım avantajları sadece dosya boyutlarının küçük olmasıyla sınırlı kalmayıp, program multimedia desteğini de web sayfası içinde kullanıcılarına sunmaktadır. HTML içinde standart olarak kullandığımız midi müzik formatının yanı sıra, Wav ve Mp3 formatlarını kullanımı ve bunların üzerinde ses efektlerinden yararlanılarak yapılan düzenlemeler, web sayfalarına tartışılmaz bir canlılık katmaktadır. Hemen akla kullanılan Wav ve Mp3 dosyalarının ne kadar çok yer kapladığı gelebilir. Flash bunu da hallediyor. Dosyaların ses kalitesini bozmadan %5 e kadar mp3 ve raw formatlarında sıkıştırabiliyor. Sonuç olarak Flash a yukarıda sıralanan özellikleri nedeniyle birçok övgüler yağdırabiliriz. Ama kesin olan bir şey var ki, o da Artık Flash, web tasarımı ile uğraşan herkesin bilmesi gereken temel bir arayüz programı haline geldiğidir. HTML ve Flash HTML in tarihi ve anlamından yola çıkarak, Internetin çalışma prensiplerini de göz önünde bulundursak aşağıdaki gibi bir sonuç çıkartabiliriz; Bulunduğumuz iletişim çağında veri transferi, hızlı bir evrim geçirmektedir. Yakın tarihe kadar veri transferi ve haberleşme arayüzü sadece text ile sınırlı kalırken, HyperText Markup Language sayesinde net ortamında sunum, resim ve text ile beraber de yapılabilmektedir. Zaman geçtikçe yoğun bir şekilde kullanılan www protokolünün özellikle sayfalarda ses ve resim kullanımının yoğunlaşması nedeniyle hız-kalite konusunda problemleri ortaya çıkmaya başlamıştır. Bu problemi aşmak için yapılan çalışmalar; uydu teknolojisi, yeni yazılımlar, yeni versiyonlar, java ve diğerleri derken, meydana gelen en önemli gelişmelerden biri de Flash olmuştur.
Şimdiye kadar web sayfalarının tek hakimi HTML idi. Bu nedenle Internet üzerinde sayfa hazırlayanlar, HTML in zahmetli kod yazma işinin üstesinden gelmek zorundaydılar. Java bu tahtı sarsmak yerine sağlamlaştırdı ve elinden geldiğince HTML e destek verdi.html gerçek bir standart oldu. CGI-ASP-PHP de en güzel veri araçları haline geldi... Her şey tamam yerli oturmuştu ama hala bir eksik vardı. Animasyon,ses ve hareket İşte bu desteği de HTML e Macromedia Flash ile verdi. Daha rahat bir arayüzle. Flash ile oluşturulan tüm çalışmalar, HTML içine sanki bir resimmiş gibi yerleştirilmesi, HTML ile sorunsuz çalışması, FrontPage ve diğer HTML editörleri ile uyumu sayesinde Flash gün geçtikçe, daha vazgeçilmez bir hale gelmiştir. Ve yeni bir standart format doğdu. SWF (Shock Wave Flash). Flash yardımcı programları diye adlandırabileceğimiz bu programlarda artık münferit olarak SWF ürünleri verebiliyor. Ayrıca bu ürünler, üzerinde hiç bir değişiklik yapılmadan HTML içinde de kullanılabiliyor... Size flash anlatmadan önca bilmeniz gerektigini düşündügüm action ları veriyorum. Bunları bilmeniz ileride size büyük bir kolaylık sağlıycak... Actions Nedir? Actions, Flash içinde senaryonun yönlendirilmesini sağlayan ve oluşturulan nesnelerin hareketlerini biçimleyen komut düzenleyicisidir.(editör)flash'ın merkezi bilgi işlem birimi olarak tanımladığımız bu bölümde nesnelere ait her türlü kontrol yapılabilir ve dış ortamlar ile veri iletişimi sağlanır.tasarımcının programlama gücü ile doğru orantılı olarak çalışan Actions, ayrıca en zor anlaşılan konular arasında yer almaktadır.
Bu yüzden aşağıdaki açıklamalarda Actions kullanımında zorluk çekilen bir takım komutlar örnek olarak verilmiştir. IF-ELSE & IF FRAME IS LOADED Karşılaştırma yapan bu iki komut senaryoyu, mantıksal yorumu sonucunda farklı yerlere yönlendirir. If komutu If Frame Is Loaded komutundan daha farklıdır. Else komutu ise matematikteki gibi If in değilidir.if eğer ise Else de değilse anlamındadır. 2.frame If Frame Is Loaded (animasyonlar, "son") Go to and Play (3) End Frame Loaded Yukarıdaki kodun açıklaması ise şöyledir. Eğer yan tarafta parantezin içindeki senaryonun (animasyonlar) son uncu frame i yüklenmiş ise 3 numaralı frame e git ve buradan senaryoyu devam ettir.aynı işlem 3.frame için de geçerlidir.böylece Flash filmini oluşturan senaryoların hepsinin teker teker yüklenmesinin kontrolü sağlanır.tüm yükleme işlemi tamamlandığı zaman ise Flash filmi kesintisiz olarak gösterime girer. 3.frame If Frame Is Loaded (sesler, "son") Go to and Play (4) End Frame Loaded If Frame Is Loaded komutu sadece bu yükleme işleminin kontrolünü yaparken IF komutu, yardımcı komutlar olarak_frameloaded,_currentframe ve _totalframes fonksyonu ile de aynı kontrolü yapabilmektedir.bunun yanında geniş kullanım alanına sahip olan her türlü mantıksal karşılaştırmayı da yapmaktadır. If (isim eq Ali )
Go to and Play ( Alinin Dunyasi,1) Else If (isim eq Mehmet ) Go to and Play ( Mehmetin Dunyasi,1) Else Go to and Play ( HOSGELDIN,1) End If SET PROPERTY Sembol haline getirilen nesnelerin özelliklerini değiştiren Actions menu komutudur.kullanım şekli ve özellikleri ise aşağıdaki gibidir. Set Property ("Nesnenin adı",değiştirilecek Özellik) =Değeri Set Property ("", X Position) = Set Property ("", Y Position) = "" Set Property ("", X Scale) = "" Set Property ("", Y Scale) = "" Set Property ("", Alpha) = "" Set Property ("", Visibility) = "" Set Property ("", Rotation) = "" Set Property ("", Name) = "" Set Property (High quality) = "" Set Property (Show focus rectangle) = "" Set Property (Sound buffer time) = "" Şimdi de komutu bir örnek ile incelemeye çalışalım.yeni bir Flash sayfası açıp.(ctrl+n) Sahneye herhangibir şekil çizelim ve F8 ile sembol haline getirelim. Sembol oluştururken de sembolü MOVIE olarak tanımlıyalım.movie tanımının Instance Name bölümünde SETPROPERTY içinde kullanmak üzere bir isim verelim. SET PROPERTY XPosition DĠĞERLERĠ Adından da belli olduğu gibi daha önceden oluşturulmuş movie nin X,Y koordinatlarını değiştirmek için kullanılır.
Bu komutun nasıl kullanılacağını daha iyi kavramak için Kitap ile beraber gelen CD içindeki setproperty.fla çalışmasını inceleyebilirsiniz. Adı geçen çalışmada movie oluştururken frame by frame yöntemini kullandık ve adına kup dedik T adından bir değişken tanımlayıp değer olarakda 1.frame de T=200 olsun dedik Set Variable: "t" = 200 2.frame de T değerinin herkeresinde 2 şer azalması için Set Variable: "t" = t-2 tanıını yaptık. 3.frame de önceki framelerde alınan değerlerle beraber nesneye X değerini 2 azaltıp komutu uyguladık. Set Property ("kup", X Position) = t 4.frame içinde de seneryanonun sürekliliğini sağlamak için programı tekrar 2.frame e gönderdik. Go to and Play (2) Yukardaki SET PROPERTY komut satırında eğer Xposition yerine Yposition yazımını yaparsak hareke Y ekseni boyunca azalarak devam edecektir.diğer bir tanım olan t yi de Set Variable: "t" = t+2 şeklinde tanımlarsak hareket artarak devam edecektir.(başlangıç noktası orjin olmak üzere) TRACE Flash içinde herhangibir aritmetiksel yada mantıksal işlem yaptıktan sonra işlemin son aşmasını takip etmek için kullanılır.kullanımı: Trace(Takip edilecek değişken) şeklindedir. Kullanırken dikkat edilmesi gereken konulardan biri de değişkenlerin cinsidir.eğer takip edilecek değişken nümerik ifadelerden oluşuyorsa, Trace(degisken) Alfanümerik stringlerden oluşuyorsa da Trace( degisken ) şeklinde kullanılmalıdır. Actions menüsünden seçilen bu komut OUTPUT olarak programın çalışması esnasında bize yan taraftaki gibi bir pencerede, istenilen değişkenlerin o anki değerlerini verecektir. Trace (tur) Go to and Play (1)
Şeklindeki bir kullanımda tekrarlanan yada yönlendirilen bir senaryoda sayısal içeriği olan tur değişkeni incelenmektedir. LOOP-WHILE Bir döngü komutudur.istenilen şart sağlanan kadar işlemin yapılmasını sağlar.genellilke aritmetiksel işlemlerde kullanılır. Kullanım şekli ise: Loop While(şart) Yapılacak işlemler End Loop şeklindedir. Bunu bir örnek ile açıklamak için; 1 den 10 kadar sayıları toplayan ve çarpan son olarak da sonucu yazan programı LOOP- WHILE ile yazmaya çalışalım. Bunun için bir önceki trace komutunun bulunduğu örneği referans kabul ediyoruz.daha sonrada sahne üzerinde değerlerin görünmesi için gtoplam,carpim textfield lerini tanımlıyoruz. Tüm değişkenlerin başlangıç değerlerin 1 kabul ediyoruz. Set Variable: "degerimiz" = 1 Set Variable: "carpim" = "1" İlkönce 1.frame de tanımları yaptık.dikkat edilirse 1 ile 1 arasında fark yoktur. Loop While (degerimiz<=10) Go to and Play (2) Set Variable: "gtoplam" = gtoplam+degerimiz Set Variable: "degerimiz" = degerimiz+1 Set Variable: "carpim" = carpim * degerimiz Trace (degerimiz) Trace (gtoplam) Trace (carpim) End Loop Stop
Load unload movıes örnek scrıptleri Kulanı şekli; Load Movie ([Hedef], [konumu]) Unload Movie (konumu]) Load Variables ([Datakütüğü], [konumu]) Load Variables ([Script], "/", [GET,POST,DON T SEND-Veri iletim tipi]) Load Movie yükleme-örneği (level): Load Movie ("/moviexx", 1) Load Movie- yükleme örneği (target): Load Movie ("/moviexx", "/") Unload Movie-kaldırma örneği: Unload Movie (1) Load Variables-yükleme örneği: Load Variables ("bilgiler.txt", "/") Send Variables veri gönderme örneği: Load Variables ("http://oss.osym.gov.tr/oss99.dll", "/", vars=post) Fs command Şimdiye kadar FS Command ile yaptığımız kısa açıklamalarda java scriptleri ile beraber kullanılıp,ekran boyutlarını değiştirebildiği üzerinde durmuştuk.
Oysa bunun yanında programcıların yakından tanıdığı shell işleminide yapabilmektedir.alt taraftaki program kodunda FS Command ile daha önceden tanımlanan texfield ler birbirine eklenerek sabit disk üzerine command.com yardımıyla veri.txt dosyası oluşturulmuştur. a.on (Press) b. FS Command ("exec", "command.com"&chr(9)&"/c"&chr(9)&"echo"&chr(9)&"eskimetin="&girismetin&">c:\ver i.txt") c. Ahmet YALAP, Tasarım