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.
Burada 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”]
[/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.
uygulama güzel ama kodları nereye yaza caz acele lütfen
eğer actionscript3 ile yazıyorsanız sahnede boş bir alanda F9 tuşuna basın ve kodları oraya yazın.
yaa bana gösterişl bi hesap makinesi lazım yardım edrmisiniz…
QUOT kısımları sözdizimi hatası veriyor.
islem.text = "/"; burada " html kopd karşılığı. islem.text = “/”; olarak değiştirin düzelecektir. Sistem özel işaretlerin html kodlarını gösteriyor maalesef.