?>
Flash çalışmamızda verileri XML dosyasından alan kullanışlı flash galeri uygulaması yapacağız. İlk olarak kendimize uygun resimler hazırlayalım benim çalışmada kullandığım resimleri 430X300 px olarak hazırladım. Çalışmamıza başlayalım ilk olarak yeni bir çalışma sayfası açalım açtığımız sayfayı isterseniz resimlerin değerinde açabiliriz ben biraz büyük değerde açtım (450X320 px) bunu yapmamdaki neden resimlerin altında gölge efekti vermek olacak.
1-Scene1 sahnemizde rectangle tool aracı ile resim ölçüsünde bir dikdörtgen oluşturalım dış çizgisi olması renk olarak (#666666) seçelim. Hazırladığımız diktörtgen seçili movie clip yapalım name olarak resimler_mc yazalım. Layer1 adını resim-bg yazalım.

2-Properties panelden filters Drop Shadow verelim resimlerin altında gölge efekti olsun.

3-Sahnede resimler_mc klip seçili instance name kutusuna resimler yazalım.

4-İleri ve geri olarak kullanacağımız butonu hazırlayalım tek buton yeterli. Flash buton hazırlamayı bildiğinizi varsayıyorum isterseniz site içinde buton hazırlamayı öğrenebilirsiniz.
5-Buton hazırladık resim-bg layer üzerinde kütüphaneden hazırladığımız butonu sahneye taşıyalım iki buton olacağı için tekrar alalım biri ileri buton diğeri ise geri buton olacak aynı yönde olduğu için Rotate aracı ile butonun birini çevirelim sahnede istediğimiz yere ayarlayabiliriz.
İleri butonu seçili yapalım instance name kutusuna ileri yazalım. Geri butonu seçili yapalım instance name kutusuna geri yazalım.

6-Resimlerimiz için açıklama yazı hazırlayalım.Dynamic text aracı ile text yeri hazırlayalım instance name kutusuna baslik yazalım.

7-Yeni layer ekleyelim layer adı action olsun ekli kodları actions paneli açarak ekleyelim.
var x:XML = new XML();
x.ignoreWhite = true;
var urls:Array = new Array();
var bilgi:Array = new Array();
var whoIsOn:Number;
x.onLoad = function(success) {
var photos:Array = this.firstChild.childNodes;
for(i=0;i<photos.length;i++) {
urls.push(photos[i].attributes.url);
bilgi.push(photos[i].attributes.baslik);
}
resimler.loadMovie(urls[0]);
baslik.text = bilgi[0];
whoIsOn = 0;
}
x.load("image.xml");
geri.onRelease = function() {
if(whoIsOn > 0) {
whoIsOn--;
resimler.loadMovie(urls[whoIsOn]);
baslik.text = bilgi[whoIsOn];
}
}
ileri.onRelease = function() {
if(whoIsOn < urls.length-1) {
whoIsOn++;
resimler.loadMovie(urls[whoIsOn]);
baslik.text = bilgi[whoIsOn];
}
}
8-Geldik XML dosyamızı hazırlamaya Notepad editörü açıp hazırlayabiliriz.
<?xml version="1.0" encoding="ISO-8859-1" ?> <slaytshow> <photo url="img/resim1.jpg" baslik="Torunum Çağan Age 9" /> <photo url="img/resim2.jpg" baslik="Torunum Özge Age 4" /> <photo url="img/resim3.jpg" baslik="Torunum Eylül Age 2" /> <photo url="img/resim4.jpg" baslik="Torunum Çağan" /> <photo url="img/resim5.jpg" baslik="Torunum Özge" /> <photo url="img/resim6.jpg" baslik="Torunum Eylül" /> <photo url="img/resim7.jpg" baslik="Torunum Çağan" /> <photo url="img/resim8.jpg" baslik="Torunum Özge" /> <photo url="img/resim9.jpg" baslik="Torunum Eylül" /> </slaytshow>
XML dosya adını image olarak isimlendirip kayıt edelim. Kod içinde (x.load(“image.xml”);) olarak belirlemiştik.
9-hazırladığımız resimleri img isimli klasör içine ekleyelim sıralamayı resim1,resim2 şeklinde sıralayalım XML dosyasını inceleyebilirsiniz.
Çalışmayı test edelim.



import fl.transitions.Tween;
import fl.transitions.easing.*;
var ileriPS,geriPS=Tween;
ileri_btn.addEventListener(MouseEvent.CLICK, ileri);
function ileri(e:MouseEvent) {
ileriPS=new Tween(resimler_mc,"x",Regular.easeOut,resimler_mc.x,resimler_mc.x-400,.5,true);
}
geri_btn.addEventListener(MouseEvent.CLICK, geri);
function geri(e:MouseEvent) {
geriPS=new Tween(resimler_mc,"x",Regular.easeOut,resimler_mc.x,resimler_mc.x+400,.5,true);
}
stage.addEventListener(Event.ENTER_FRAME, kontrolEt);
function kontrolEt(e:Event) {
if (resimler_mc.x>=0) {
geri_btn.visible=false;
} else if (resimler_mc.x<=-1985) {
ileri_btn.visible=false;
} else if (resimler_mc.x <=-1&&resimler_mc.x>=-1984){
ileri_btn.visible=true;
geri_btn.visible=true;
}
}
4-Çalışmayı test edelim
FLA İNDİR
Flash çalışmamızda fotoğraf galerisi hazırlayacağız slideshow galeri uygulamalarımızdan farklı olarak XML üzerinden resimlerimizi çağırmamız olacaktır. Çalışmamızda kullanacağımız resimleri hazırlayalım hazırladığımız resimlere uygun çalışma sayfası açalım benim tercihim 476×550 pixels oldu.
1-Çalışmaya buton hazırlayarak başlayalım kendinize göre buton hazırlayabilirsiniz ben photoshop ile kendi butonumu hazırladım flash içine import ettim sahnede resim seçili F8 graphic yapalım name Symbol 1 olarak kalabilir Symbol 1 seçili F8 movie clip yapalım name Symbol 2_mc olsun Button içine girelim up konumunda aynen kalsın over konumunda properties fitler drop shadow uygulayalım.

Down konumunda drop shadow blur 5 değerini 2 distance 5 değerini 2 yapalım. Hit konumu up ile aynı kalabilir.
2-İki buton kullanacağımız için kütüphanedeki butonu duplicate kopya yapalım name but sağ olsun yeni buton içine girelim free transform ile up-over-down-hit konumlarında çevirelim amacımız drop efektini aynı konuma getirmek.
3-Scene1 sahnemize gelelim çalışmada görülen arka fon photoshop ile hazırlandı isteğinize göre uygulama yapabilir hiçbir şey eklemeden sadece renk verebilirsiniz bu kısım size kalsın. Layer1 adını bg yapalım resmi ekliyoruz aling panelden sahneye ortalayalım.
4-Yeni layer ekleyelim adını sol buton yapalım kütüphaneden sol-but alarak ekleyelim sahnede buton seçili instance name kısmına geri_btn yazalım buton üzerinde actions paneli açalım ekli kodu ekleyelim.
on (release)
{
My_SlideNumber = My_SlideNumber - 1;
showPhoto(My_SlideNumber);
}
5-Yeni layer ekleyelim layer adı sağ buton olsun kütüphaneden sağ-but alarak ekleyelim buton seçili instance name kısmına ileri_btn yazalım buton üzerinde actions paneli açalım ekli kodu ekleyelim.
on (release)
{
My_SlideNumber = My_SlideNumber + 1;
showPhoto(My_SlideNumber);
}
6-Yeni layer ekleyelim layer adı klip olsun Insert New Symbol yeni clip yapalım name klip olsun kütüphanede boş bir klipimiz oldu boş klipi kütüphaneden alalım klip layerimize ekleyelim buradaki dikkat etmemiz gereken kısım merkez noktası sol üst köşe olsun resimlerimizin sahnedeki yerini bu nokta doğrusunda ayarlayacağız.

7-Yeni layer ekleyelim layer adı text logo olsun yazı yazalım.
8-Yeni layer ekleyelim layer adı action olsun F9 actions paneli açalım ekli kodu ekleyelim.
function loadPhotoXml(filename)
{
PhotoXml.load(filename);
PhotoXml.onLoad = function (success)
{
if (success)
{
My_SlideNumber = 0;
My_ParentNode = this.firstChild;
My_TotalSlides = My_ParentNode.childNodes.length;
showPhoto(My_SlideNumber);
} // end if
};
} // End of the function
function showPhoto(PhotoNum)
{
if (PhotoNum == My_TotalSlides - 1)
{
ileri_btn.enabled = false;
}
else
{
ileri_btn.enabled = true;
} // end else if
if (PhotoNum == 0)
{
geri_btn.enabled = false;
}
else
{
geri_btn.enabled = true;
} // end else if
var _loc3 = My_ParentNode.childNodes[PhotoNum].attributes.filename;
var _loc4 = My_ParentNode.childNodes[PhotoNum].attributes.resim;
klip_mc.loadMovie("photo/" + _loc3);
title_text.text = _loc4;
klip_mc._alpha = 0;
this.onEnterFrame = function ()
{
if (klip_mc._alpha < 100)
{
klip_mc._alpha = klip_mc._alpha + 3;
} // end if
};
} // End of the function
var My_SlideNumber;
var My_TotalSlides;
var My_ParentNode;
var PhotoXml = new XML();
PhotoXml.ignoreWhite = true;
loadPhotoXml("photo.xml");
9-Yeni layer ekleyelim layer adı title olsun buton layerleri üzereni alalım Dynamic text çerçeve oluşturalım instance name kısmına title_text yazalım
10-Çalışmamızı tamamladık şimdi XML dosyası hazırlayalım not defteri veya Notepad ile yapabiliriz hazırlanışını ekli dosya içinde bulabilirsiniz. Kayıt ederken photo adı ile kayıt edelim .
11- Resimlerimizi photo isimli klasör içine ekleyelim XML dosyası Photo klasörü flash Swf aynı klasör içinde yer alacak.
Çalışmamız sonlandı artık deneyebiliriz.
Çalışmayı izle
FLA İndir
[Hidepost]
1-Kütüphaneden ilk resmimizi sahneye alalım aling panelden sahneye ortalayalım

2-F8 movie klip yapalım name olarak image_1 yazalım.

3-Layer adını değişelim image1 olsun klipimiz 15 frameye keyframe ekleyelim 1 framede sahnedeki klipimizi yukarı kaydıralım background üst kenarı ile hizalayalım örnek resimde.

4-İmage1 layerin 1 framesine gelelim Properties Panel (Ctrl+F3) açalım Filters panelden Blur efekti uygulayalım.

5-1.frameyle 15 frame arasına create motion tween verelim. Yeni layer ekleyelim layer adını mask1 olarak belirleyelim.
6- Rectangle Tool (R) aracı ile dış çizgisi olmayan bir dikdörtgen oluşturalım. Shanedeki yerleşimi background çalışma alanını height değeri 350 pixels olarak ayarlamıştım oluşturacağımız dikdörtgen bunu yarısı olacak kısaca width 300 ve height 175 olacak ve çalışma alanının üst kısmında yer alacak örnek resim.

7-Mask1 layer üzerine gelelim sağ klik mask seçeneğini aktif yapalım.
8-Yeni layer ekleyelim layer adını tekrar image1 olarak yazalım 7 frameye keyframe ekleyelim tekrar image_1 klipimizi alarak 7. frameye yerleştirelim 23 frameye keyframe ekleyelim 7 framede klipin yerleşik durumu örnek resimde göreceğiniz şekilde alt tarafa kaymış durumda.

9-23 framede klipimiz sahneyi tam olarak ortalamış durumda olacak 7 ve 23 frameler arasına create motion tween vereceğiz.
10-Yeni layer ekleyelim 7 frame ekleyelim layer adı tekrar mask 1 olarak belirleyelim sonuç olarak ilk resmimizin animasyon kısmı olduğundan layer isimlerini aynı yapmış oluyoruz. Tekrar Rectangle Tool (R) aracı ile daha önce yaptığımız dikdörtgenin aynısını yapıyoruz farklı olarak bu sefer çalışma alanının alt kenarı ile aynı hiza yapıyoruz örnek resim.

11- Tekarar mask1 layer üzerinde sağ klik mask seçeneğini uyguluyoruz.
12- Yeniş alyer ekleyelim layer adı ses olsun istediğimiz ses efektini 1 frameye ekleyelim
İlk resmimizin (klipimizin) uygulamasını görmüş olduk aynı uygulamayı diğer resimlerimizden oluşturduğumuz klipler için uygulayalım kısaca yeni layer ekleyelim layer adı image1 olsun 70 frameye keyframe ekleyelim image_2 klipi frameye ekleyelim 85 frameye keyframe ekleyelim 70 framede blur efektini uygulayalım 70 framedeki görünüm ilk klipimizde olduğu gibi olacak kısaca frameler arasını sizlere anlatmak için kısa bilgi verdim.

Çalışmayı incelemek için ekli FLA dosyasını indirebilirsiniz.
Test edelim
Ctrl+Enter
FLA İndir
[/Hidepost]
]]>
Çalışmamızda resimlerimizden photo galeri yapalım ilk olarak resimlerimizi hazırlayalım çalışmamızda kullanmak için ben photoshop ile küçük resim 88×66 px büyük resim olarak 310×235 px resimler hazırladım
[Hidepost]
Flash çalışma sayfamı 475×425 px olarak açtım resimleri flash içine import edelim.Küçük resimlerimiz tek, tek alarak buton yapalım.

Büyük resimlerimiz tek, tek alarak movie clip yapalım

Scane1 sahnemizde layer1 birinçi framede örnek resimdeki şekilleri yapalım resim üzerinde görülen üst kısım büyük resim cliplerin geleceği çerçeve alt kısım ise dörderli olarak butonları dizeceğimiz kısım olacak.

Layer 1 üzerine butonları dizelim

Yeni layer ekleyelim layer adı resim1 olsun 1.frameyi boş bırakalım 2. frameye ilk resim movie clipi ekleyelim 15 frameye keyframe ekliyoruz 2 ile 15 frame arasına create motion tween verelim 2 framede sahnedeki klipi seçili yapalım Advanced effect uygulayalım örnek resim 16 frameden frameden sonrasını silelim remove frames

Yeni layer ekleyelim layer adı resim2 olsun 16 frameye keyframe ekleyelim 2 resim klipi ekleyelim (2_mc ) 30 frameye keyfreme ekleyelim 16 frame ile 30 frame arasına create motion tween verelim 16 framede Advanced effect uygulayalım. 31 frameden frameden sonrasını silelim remove frames
Yeni layer ekleyelim layer adı resim3 olsun 31 frameye keyframe ekleyelim 3_mc klipi ekleyelim 45 frameye keyframe ekliyoruz 31 ile 45 arasına create motion tween uygulayalım 31 framede Advanced effect uygulayalım 45 frame sonrası 46 frameden sonrasını silelim remove frames
Tekrar yeni layer ekleyelim layer adı resim4 olsun aynı uygulamaları sırası ile takip ederek uygulayalım
Resimlerimizden hazırladığımız 8 adet klipi yerleştirdik en üst kısma actions layer adında layer ekleyelim 1. framede actions paneli açalım stop(); ekleyelim.
Resim1 layerimizin 16 framesine gelelim actions paneli açalım stop(); ekleyelim tek, tek tüm kliplerin olduğu create motion uyguladığımız layerlerin son framelerine stop(); ekleyelim.
Butonlarımız üzerine gelelim ilk butonu seçili yapalım sahnede üzerinde sağ klik actions paneli açalım kodu ekleyelim
on (release) {
gotoAndPlay(2);
}
Sıralamadaki ikinci butonu sahnede seçelim sağ klik kodu ekleyelim
on (release) {
gotoAndPlay(16);
}
Sıra ile tüm butonlarımız üzerinde aynı kodu ekleyelim sadece frame sayılarını değişelim.
Çalışmamızı test edebiliriz CTRL+ENTER
[/Hidepost]
]]>





order = [["0", "1", "2", "3", "4", "5", "6", "7"],
["4", "7", "5", "2", "0", "3", "6", "1"]];
for (var j = 0; j var i = this.createEmptyMovieClip("images"+j, j);
var m = this.attachMovie("mask"+j, "mask"+j, 100+j);
m._x = target0=target1=25;
m._y = 200;
i._y = 200;
i.setMask(m);
for (var k = 0; k var img = i.attachMovie("image"+order[j][k], "image"+imageCount, 1000+k);
img._x = (img._width*k);
var thumb = this["thumb"+order[j][k]];
thumb["pos"+j] = target1+(k*-img._width);
thumb.onPress = function() {
target0 = this.pos0;
target1 = this.pos1;
};
thumb.onRollOver = function() {
this._alpha = 60;
};
thumb.onRollOut = function() {
this._alpha = 100;
};
}
}
target0 = thumb4.pos0;
target1 = thumb4.pos1;
speed = 10;
this.onEnterFrame = function() {
images0._x += ((target0)-images0._x)/speed;
images1._x += ((target1)-images1._x)/speed;
};
]]>
ilk olarak 8 adet resim hazırlayacağız büyük resimler 275×275 px olacak her resim için vereceğimiz isim image_0 dan başalyarak image_7 kadar isimler verilecek. Küçük resimler 50×50 px isim thumb_0 ve thumb_7 kadar olacak. Resimleri hazırladıktan import edelim kütüphaneye aldıktan sonra çalışma sayfamızı açalım 500x500px olsun color size kalmış ##003333 uygulanan renk kütüphanede 2 adet klasör açalım büyük resimleri images adını verdiğimiz klasör içine alalım
Büyük resimleri kütüphaneden tek tek alarak movie klip yapalım name kısmına image0 dan image7 kadar isim verelim örnek

Küçük resimleri kütüphaneden tek tek alarak klip yapalım örnek

Oval tool aracı ile dış çizgisi olmayan bir daire çizelim color #666666 daire capı 315×315 px

Dairemiz seçii movie klip yapalım F8 name BG olsun

BG klipin içine girelim üzerinde tıklarsak gireriz layer adı BG1 yeni layer ekleyelim BG2 olsun oval tool aracı ilecolor #999999 daire çizelim 290×290 olsun

Sahnedeki klipimiz seçili durumda F8 movie klip yapalım name gallery olsun tılayalım gallery klip içine girelim ilk layer adı BG olsun yeni bir layer ekleyelim layer adı images olsun kütüphaneden image0 isimli resim klipini alalım 1 frameye ekleyelim yeni bir layer ekleyelim layer adı mask olsun images layer üzerine gelelim eklediğimiz resim klip seçili durumda F8 movie klip yapalım name imageHolder yazalım image layerdeki resmi delete silelim kütüphaneden imageHolder adlı kilipi ekleyelim images layerde bu işlem sonrası instance name kısmına imageHolder yazalım. Mask layer 1 framesine gelelim oval tool aracı ile bir daire oluşturalım dış çizgisi olmayan daire olsun büyük resimlerin ölçüsünde olsun 275×275 px

Maks layer üzerinde sağ klik mask uygulayalım yeni layer ekleyelim laye adını daire yazalım. Oval tool aracı ile içi boş bir daire çizelim çizgi kalınlığı 1 px olsun

Guide klipimizin içine girelim 8 adet resmi eşit aralıklarla eklemek için çizgileri hazırlayalım. Yeni bir layer ekleyelim Line tool aracı ile çizgi çizelim çizgimizi kopyalayalım yeni layer ekleyelim paste edelim şimdi resimdeki transform kısmındaki rotate kısmına 90 yazalım işaretli pencereye apply transform seçeneğine tıklayın bu şeklide her yeni layer yaptığımız pasteyi acılara göre ayarlayın

Küçük resimleri klip yapmıştık şimdi thumb0 isimli klipin içine girelim ilk layer bg olsun yeni llayer ekleyelim layer adı mask olsun oval tool aracı ile daire çizelim resim büyüklüğünde olsun 50×50 px mask dairemizi seçil durumda movie klip yapalım name kısmına humbMask yazalım diğer thumb0 dan thumb7 kadar yapacağımız kliplerde kullanacağız

Yeni bir layer daha ekleyelim layer adını BG yazalım oval tool aracı ile daire çizelim color #993333 olsun 76×76 px olsun seçil durumda movie klip yapalım name kısmına thumbBG yazalım bu layerimizi en alt kısma taşıyalım mask layerimiz üzerinde mask uygulayalım

örnek olarak thumb0 klipi hazırladık kütüphanedeki diğer thumb1 ve diğer klipleri aynı şekilde yapalım mask klip kütüphanede mevcut thumbBG klipimiz hazır klip yaparken alarak diğer thumb1 klipimizi ve diğer thumb7 kadar olanları tek tek yapalım
Tekrar gallery klipimiz içine girelim en üst daire layer üzerine tekrar layer ekleyelim layer adı thumbs olsun sahnedeki çizgilerin üzerine hazırladığımız thumb0 klipinden başlayarak sıra ile yerleştirelim

Sahnede tüm klipler ekli seçili durumda movie klip yapalım name thumbHolder olsun thumbHolder klipin içine girelim sıra ile eklediğimiz thumb0 dan başlayarak thumb7 kadar sıra ile instance name kısmına klip isimlerini ekleyelim

Gallery klipin içine girelim daire olarak hazırlamamızda kolaylık olsun diye eklediğimiz daire layeri silelim tumbs layer seçil instance name kismina thumbHolder yazalım.
imageHolder isimli klipin içine girelim framedeki resmi delete silelim.
Scene1 sahnemize gelelim sahnedeki klipin olduğu layer adını gallery yapalım klip seçili instance name kısmına gallery yazalım. Farme date 30 yapalım biraz hızlı olsun.
Yeni layer ekleyelim layer adı
script olsun 1 frameye verdiğim kodları ekleyelim.
stop();
positions = [];
imageTotal = 8;
pauseGallery = false;
var current:MovieClip;
for (var i = 0; i var t = gallery.thumbHolder["thumb"+i];
t.image = "image"+i;
t.onPress = function() {
removeMovieClip(current);
current = gallery.imageHolder.attachMovie(this.image, this.image, i);
pauseGallery = false;
};
t.onRollOver = function() {
pauseGallery = true;
};
t.onRollOut = function() {
pauseGallery = false;
};
}
current = gallery.imageHolder.attachMovie("image0", "image0", 1000);
this.onEnterFrame = function() {
if (!pauseGallery) {
for (var j = 0; j gallery.thumbHolder["thumb"+j]._rotation -= 0.5;
}
gallery.thumbHolder._rotation += 0.5;
}
};
Çalışmamızı test edebiliriz verilen emeğin karşılığı yorum ve fikirlerinizi yazmayı unutmayın
CTRL+ENTER
FLA Flash CS3 İndir
FLA Flash8 İndir






[/hidepost]
]]>