教你用AS快速畫出簡單實用的菜單

來源:互聯網
上載者:User
菜單 最終效果預覽:
 
  源碼及其解析:

//直接用AS畫的菜單,功能很少,色塊會隨著滑鼠的移動而移動.
//以下是主程式.
var menuText = new Array("我收藏的圖片", "我收藏的音樂", "我的個人作品",
 "我要看日記本", "現在寫信給我", "進我的留言簿");
//菜單的標籤.
var menuURL = new Array("http://#", "http://#", "http://#", "http://#",
 "qxiao_xi@tom.com", "http://ningning.dns0755.net");
//功能表標籤指向的網址.
var theItem;
//建立MC的時候就用上這個變數.
var i;
//迴圈變數.
var step;
//色塊移動的步數.
var running;
//判斷是否移動的變數.
//建立新的函數.引用時可直接用this.DrawRect(x,y,w,h);
//x,y-->座標值,w,h-->寬和高.
MovieClip.prototype.DrawRect = function(x, y, w, h) {
 this.moveTo(x, y);
 this.lineTo(x+w, y);
 this.lineTo(x+w, y+h);
 this.lineTo(x, y+h)
 this.lineTo(x, y);
};
//建立功能表項目的的函數.
//mc-->電影剪輯 x,y-->座標 w,h-->寬,高. text-->字串.
function CreateItem(mc, x, y, w, h, text) {
 mc.createTextField("text", 2, x+10, y, 85, 20);
 //建立空的動態文欄位
 mc.text.text = text;
 //為建立的動態文欄位賦值,顏色,
 mc.text.textColor = 0x000000
 //文字大小有無邊框,可否選擇.
 mc.text.size = 14;
 mc.text.border = false;
 mc.text.selectable = false;
}
//開始建立菜單的函數.
function CreateMenu(mc) {
 //建立一的電影剪輯,並在上面化一個色塊.名字叫bg-->BackGround.
 mc.createEmptyMovieClip("bg", 1); 
 //建立一個空MC
 mc.bg.beginFill(0x33ccff, 100);
 //開始填充
 mc.bg.DrawRect(0, 0, 90, 20);
 //調用函數
 mc.bg.endFill();
 //結束填充
 mc.bg._alpha = 50;
 //透明度
 mc.bg._visible = false;
 //可見度
 //結束繪畫.
 //下面開始迴圈.
 for (i=0; i
  mc.createEmptyMovieClip("item"+i, 2+i);
  theItem = mc["item"+i];
  theItem.index = i;
  CreateItem(theItem, i*90, 0, 90, 20, menuText[i]);
  //楨開始時的動作.
  theItem.onEnterFrame = function() {
   //if語句的預設判斷條件是"真"
   //當running==true時.
   if (running) {
    if (mc.bg._x<=step*90) {
     mc.bg._x += 5;
    } else if (mc.bg._x>=step*90+10) {
     mc.bg._x -= 5;
    }
   }
  };
  //經過時的動作.
  theItem.onRollOver = function() {
   mc.bg._visible = true;
   running = true;
   step = this.index;
  };
  //離開時的動作.
  theItem.onRollOut = function() {
   mc.bg._visible = false;
   running = false;
  };
  //單擊時的動作.
  theItem.onPress = function() {
   getURL(menuURL[this.index]);
  };
 }
 //迴圈結束.
}
createEmptyMovieClip("menu", 10);
//建立"menu"電影剪輯.
menu._y = 0;
//座標值.
menu._x = 0;
CreateMenu(menu);
//建立菜單.
//把這個程式放在情境的第一楨,然後運行.
//我花了一個早上寫的東西.還湊和.



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。