Jumat, 27 Agustus 2010

Membuat Kalkulator dengan Flash 8

Bukalah flash document, kemudian insert dua layer baru, sehingga layer menjadi tiga buah masing-masing diberi nama, Teks, Tombol, actions.

Pada layer tombol, buatlah button 0-9, tombol decimal, AC, CE dan tombol operasi ; “+”, ”-“.”, “x”, dan “:”.Atau ambil button yang telah disediakan pada macromedia flash 8, ambil di windows ==> components (Ctrl+F7). Setelah itu beri label untuk setiap tombol. Kemudian untuk setiap tombol berikan instance name sebagai berikut:

“0” = my0
“1” = my1
“2” = my2
“3” = my3
“4” = my4
“5” = my5
“6” = my6
“7” = my7
“8” = my8
“9” = my9

“AC” = myClear
“CE” = myClearEntry
"+" = myPlus
"-" = myMinus
"/" = myDivide
"x" = myTimes
"=" = myEquals

Tempat menampilkan angka dan hasil dari perhitungan.
  • Pada bagian atas kalkulator buatlah sebauh TextBox pada layer Teks dengan property dynamic text dengan var myNumber.
  • Pilih Insert => New Symbol, buatlah sebuah movie clip dengan nama FakeZero. Gunakan texttool untuk membuat nol. Aturlah ukuran, font dan warna. Klick scene1 untuk kembali ke Timeline.
  • Pada layer Teks, draglah sebuah instance dari FakeZero, dan instance name pada property beri nama myFakeZero.
Tahap II. Menambah Action Script.

Selanjutnya tinggal menambahkan action script. Ketiklah action Script seperti dibawah ini di Frame1 pada layer action.
myOp="";
lastNumber=0;
thisNumber=0;
myNumber="";
newNum=true;
my1.onRelease=function () {
numberPress (1);
}
my2.onRelease=function () {
numberPress (2);
}
my3.onRelease=function () {
numberPress (3);
}
my4.onRelease=function () {
numberPress (4);
}
my5.onRelease=function () {
numberPress (5)
}
my6.onRelease=function () {
numberPress (6);
}
my7.onRelease=function () {
numberPress (7);
}
my8.onRelease=function () {
numberPress (8);
}
my9.onRelease=function () {
numberPress (9);
}
myDesimal.onRelease=function () {
numberPress(".");
}
my0.onRelease=function () {
numberPress(0);

}
function numberPress (whichKey) {
if (newNum) {
setProperty("myFakeZero",_visible,false);
myNumber=string(whichKey);
}else{
myNumber=myNumber+string(whichKey);
}
newNum=false;
}
myPlus.onRelease=function () {
myOperator("add");
}
function myOperator (myNewOp) {
thisNumber=Number (myNumber);
if (myOp=="add") {
myNumber=lastNumber+thisNumber;
thisNumber=myNumber;
}

if (myOp=="subtract") {
myNumber=lastNumber-thisNumber;
thisNumber=myNumber;
}
if (myOp=="times") {
myNumber=lastNumber*thisNumber;
thisNumber=myNumber;
}
if (myOp=="divide") {
myNumber=lastNumber/thisNumber;
thisNumber=myNumber;
}
lastNumber=thisNumber;
newNum=true;
myOp=myNewOp;
}
myMinus.onRelease=function () {
myOperator ("subtract");
}
myTimes.onRelease=function () {
myOperator ("times");
}
myDivide.onRelease=function () {
myOperator ("divide");

}
myClear.onRelease=function () {
myOp="";
lastNumber=0;
thisNumber=0;
myNumber="0";
newNum=true;
setProperty ("myFakeZero",_visible,true);
}
myClearEntry.onRelease=function () {
myNumber="";
newNumber=true;
setProperty ("myFakeZero",_visible,true)
}
myEquals.onRelease=function () {
thisNumber=Number (myNumber);
newNum=true;
if (myOp=="add") {
myNumber=lastNumber+thisNumber;
}
if (myOp=="subtract") {
myNumber=lastNumber-thisNumber;
}
if (myOp=="times") {
myNumber=lastNumber*thisNumber;
}
if (myOp=="divide") {
myNumber=lastNumber/thisNumber;
}
lastNumber=0;
myOp="";
}


Kemudian tekan Ctrl+Enter untuk test movie.
Selamat Mencoba! Mudah2an berhasil…






 

Tidak ada komentar:

Posting Komentar