Flash CS5 ActionScript ile Hesap Makinesi Yapımı

Bu dersimizde basit bir hesap makinesi yapacağız. İki adet TEXTINPUT’tan alınan sayılarla 4 işlem yapılacaktır. İşlem seçimi için RADIOBUTTON kullandık. TEXTINPUT ve RADIOBUTTON’ları eklemek için pencere menüsünden bileşenleri seçin ve çıkan pencerede user interface (Kullanıcı arabirimi) kısmından gerekli bileşenler sahnenize alın ve istediğiniz tasarımı yapın.

restricBurada isterseniz textinputların giriş kısmını sınırlandırabilirsiniz. Yani sadece sayı girilsin ki program sırasında hata oluşmasın istiyorum. Bunu için textinput’u seçin ve özellikler panelindeki  bileşen parametleri kısmında bulunan restrict alanına 0-9 yazın. Böylece textinput içerisine sayı dışında bir giriş yapılamaz.  Gerekli tasarımı yapınca tüm nesneleri adlandırmak gerekli. uygun biçimde adlandırma yapın.

Kodları incelediğinizde benim nasıl adlandırdığımı muhtemelen anlayacaksınız. Programın nasıl çalıştığı ile ilgili açıklamaları kodların içerisine yazdım. Eğer kafanıza takılan bir konu olursa yorum kısmında sorabilirsiniz.

Uygulama:

[kml_flashembed publishmethod=”static” fversion=”8.0.0″ movie=”http://www.mustafaakbal.com.tr/wp-content/uploads/2013/04/a.swf” width=”300″ height=”150″ targetclass=”flashmovie”]

Get Adobe Flash player

[/kml_flashembed]

Uygulamanın kodları:

//sonuç ve arada çıkan aritmetik işlem operatörünü gizliyoruz
islem.visible = false;
sonuc.visible=false;

//şimdi yapılacak işlemlerin kodlarını yazalım.
//toplama işlemi
topla.addEventListener(MouseEvent.CLICK,toplam);
function toplam (e:MouseEvent)
{
	//gizlediğimiz labelları görünür yapıyoruz.
	islem.visible = true;
	sonuc.visible = true;
	//şimdide gereken yazdırma işlemlerini yapalım
	islem.text = "+";
	sonuc.text = String(parseFloat(s1.text)+parseFloat(s2.text));
}
//çikarma işlemi
cikar.addEventListener(MouseEvent.CLICK,fark);
function fark (e:MouseEvent)
{
	//gizlediğimiz labelları görünür yapıyoruz.
	islem.visible = true;
	sonuc.visible = true;
	//şimdide gereken yazdırma işlemlerini yapalım
	islem.text = "-";
	sonuc.text = String(parseFloat(s1.text)-parseFloat(s2.text));
}
//çarpma işlemi
carp.addEventListener(MouseEvent.CLICK,carpim);
function carpim (e:MouseEvent)
{
	//gizlediğimiz labelları görünür yapıyoruz.
	islem.visible = true;
	sonuc.visible = true;
	//şimdide gereken yazdırma işlemlerini yapalım
	islem.text = "X";
	sonuc.text = String(parseFloat(s1.text)*parseFloat(s2.text));
}
//bölme işlemi
bol.addEventListener(MouseEvent.CLICK,bolum);
function bolum (e:MouseEvent)
{
	//gizlediğimiz labelları görünür yapıyoruz.
	islem.visible = true;
	sonuc.visible = true;
	//şimdide gereken yazdırma işlemlerini yapalım
        islem.text = "/";
	sonuc.text = String(parseFloat(s1.text)/parseFloat(s2.text));
}

Normalde textinputların içerisine girilen bilgiler metin olarak işlenir. Biz burada metinlere değil sayılara ihtiyaç duyuyoruz ve oradan gelen bilgiyi sayıya çevirmemiz gerekir.

sonuc.text = String(parseFloat(s1.text)/parseFloat(s2.text));

Bu kod satırında bulunan parseFloat textinputtan gelen metin bilgisini sayıya çeviriyor.

5 yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir