Başlangıç

Silverlight 4.0 ile Bir Nesneyi En Basit Kod (C#) ile Taşıma (Drag Drop)

Yorum bırakın


Visual Studio veya Expression Blend ile yeni bir silverlight projesi oluşturun.

  • MainPage.xaml Dosyası İçeriği;

<UserControl
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation&#8221;
xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml&#8221;
x:Class=”dragdrop1.MainPage”
Width=”640″ Height=”480″>

<Grid x:Name=”LayoutRoot” Background=”White”>
<Rectangle x:Name=”dikdortgen” Width=”50″ Height=”50″ Fill=”Blue” HorizontalAlignment=”Left” VerticalAlignment=”Top” MouseLeftButtonUp=”dikdortgen_MouseLeftButtonUp” MouseLeftButtonDown=”dikdortgen_MouseLeftButtonDown” MouseMove=”dikdortgen_MouseMove“>
<Rectangle.RenderTransform>
<TranslateTransform x:Name=”dik_donme_hareket” X=”0″ Y=”0″ />
</Rectangle.RenderTransform>
</Rectangle>
</Grid>
</UserControl>

  • MainPage.xaml.cs dosyasının içeriği;

 

private Boolean dik_mouse_durumu = false;

private void dikdortgen_MouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
this.dikdortgen.ReleaseMouseCapture();
dik_mouse_durumu = false;
}

private void dikdortgen_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
this.dikdortgen.CaptureMouse();
dik_mouse_durumu = true;
}

private void dikdortgen_MouseMove(object sender, System.Windows.Input.MouseEventArgs e)
{
if (dik_mouse_durumu)
{
this.dik_donme_hareket.X = e.GetPosition(this).X;
this.dik_donme_hareket.Y = e.GetPosition(this).Y;
}
}

 

Reklamlar

Flash As3 ‘de Duman Efekti Oluşturma

Yorum bırakın


  • Öncelikle Photoshop veya Başka bir resim düzenleme programında 40X40 boyutlarında bir *.png dosyası oluşturalım. Arkaplan şeffaf olsun.
  • dumanDuman.png dosyası isterseniz kullanabilirsiniz.
  • dumanyapimi_1dumanyapimi_2  photoshopta yapılanlar.
  • Sonra Fırça efektlerinden şekildeki gibi bir fırça efekti oluşturalım, oluşan resim üzerine duman benzeri fırça darbeleri oluşturalım. İsterseniz görünürlük ayarlarını düşürerek istediğiniz duman efektinin bir karesini oluşturun.
  • Aşağıdaki gibi bir klasör içinde bir önceki örnekteki gibi dosyaları flashta oluşturun ve kaydedin. Büyük/Küçük Harf ve isimler önenmli.
  • flash_as2_1
  • flash_as2_2 ornek.fla dosyasına Main.as bağlama
  • ornek.fla dosyasının kütüphanesine oluşan duman.png dosyasını ekleyelim. Ekledikten (ctrl+L) sonra sahneye çekin. Arkaplanda beyaz veya başka renk varsa parçalayıp (ctrl+B) kemet aracı ve sihirli değnek araçlarını kullanarak temizleyin. Sonra duman şekli sahnede seçili iken F8 ‘e basın. duman_mc isimli bir Movie Clip ‘e çevirin. Sahneden silin. Sonra şekildeki gibi bağlayın.
  • flash_as2_3duman_mc klibine sağ tuş özellkiler ile duman_mc.as dosyasını bağlama
  • Main .as dosyası içeriği;

package
{

import flash.display.Stage;
import flash.display.MovieClip;
import flash.events.Event;
import duman_mc;
import flash.display.Sprite;

public class Main extends Sprite
{

public function Main() : void
{
addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
}

private function loop(e:Event) : void
{
var Duman_mcnnesnesi:duman_mc = new duman_mc();
Duman_mcnnesnesi.x = 250;
Duman_mcnnesnesi.y = 250;
stage.addChild(Duman_mcnnesnesi);
}

}

}

  • duman_mc.as dosyası içeriği;

package
{

import flash.display.BlendMode;
import flash.display.MovieClip;
import flash.events.Event;

public class duman_mc extends MovieClip //duman_mc movie klibi için sınıf üretiyoruz
{

public var vx:Number;
public var vy:Number;

public function duman_mc() : void
{//görünürlük, boyut ve konumun rastgele alanlar olmasını sağlıyoruz
alpha = Math.random();
vx = Math.random() – Math.random();
vy = Math.random() * 3 – 5;
scaleX = scaleY = Math.random();
addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
}

private function loop(e:Event) : void
{
alpha -= 0.01;
y += vy;
x += vx;
scaleX = scaleY += 0.02;

if (alpha < 0)
removeSelf();//görünürlük 0 dan küçük değere düştümü olay bitiyor.
}

private function removeSelf() : void
{
removeEventListener(Event.ENTER_FRAME, loop);
parent.removeChild(this);
}

}

}

Flash As3 ‘de Tüm Kodları Sınıf Dosyaları (*.as) içine yazmak.

1 Yorum


Küçük projelerde kodları zaman çizelgesinde aynı fla dosyası içine yazmak basit ve kolay bir çözüm. Fakat projeler geliştikçe bu kodları ayırmak geliştirici için zorunlu hale geliyor. Şimdi ben bu işe öğrenebildiğim ve araştırdığım kadarıyla Şöyle adım adım yapalım.

  • Bir FLA oluşturma  Dosya> Yeni … Flash Dosyası (ActionScript 3.0) . ornek.fla olarak Istediğiniz yere kaydedin
  • Bir ActionScript dosyası oluşturun Dosya> Yeni … ActionScript Dosya . Main.as FLA ile aynı klasörde kaydet.
  • flash_as_1
  • Main.as dosyası ile ornek.fla Dosyasını birbirine bağlama resimdeki gibi yapın. Sınıf içerisine Main.as dosyasının adını şekildeki gibi uzantı olmadan yazın. (ben dosya adını küçük harfle yazmıştım kodun başlangıcında büyük harf vardı çalışmadı. sonra düzelttim çalıştı.)Yandaki kaleme bastığınızda oluşturduğunuz main.as dosyası açılmalıdır.
  • flash_as_2
  • Main.as dosyasının içine aşağıdaki kodu yazın.

package

{

import flash.display.MovieClip;

public class Main extends MovieClip  //buradaki sınıf ismi dosya ismiyle büyük küçük harf duyarlı olacak şekilde aynı olmak zorundadır.

{

public function Main()

{

//bu alana kodları yazacağız.

}

}

}

  • Aşağıda ilk çalışan örnek;

package
{
import flash.display.MovieClip;
public class Main extends MovieClip
{
public function Main()
{
var sonuc:String = “Merhaba Dünya”;
trace( sonuc );
}
}
}

  • Başka bir genel bir string değişkeninin değeri fonksiyon ile değiştirilmiş Örnek;

package
{
import flash.display.MovieClip;
public class Main extends MovieClip
{

public var sonuc:String;
public function Main()
{  sonuc= = “Merhaba”;
ilkfonksiyon;
trace( sonuc );
}
        public function ilkfonksiyon():void  
{
sonuc= “Güle Güle”;
}
}
}

Bana Silverlight Anlat

meslek lisesi ders notları

Eren ÇOLAK

Yazılım Mühendisi Olmak Yolunda İlerliyor...