2010-06-23 66 views
0

我有一些小畫布,我必須顯示他們周圍的邊框,我使用翻轉和展開evenets,(這些畫布持有產品圖像),這裏的滾動和轉出工作都很完美,但是當用戶點擊某個畫布時,它必須被選中,意味着它已經顯示了它的邊框,並且其餘畫布應該正常工作。但是當我選擇另一個畫布時,以前選擇的畫布應該被取消選中,並且新點擊的畫布會獲得選區,但是,如果在畫布上應用了rollOut事件,部署需要將其取消選擇畫布上,我甚至取消了對畫布的點擊部署聽者中,但在這種情況下,點擊畫布不會得到未選中,當其他的帆布被點擊顯示翻轉邊框,並選擇拇指點擊並取消選擇預先選擇的拇指

can.addEventListener(MouseEvent.ROLL_OVER,onRollOverThumb); 
can.addEventListener(MouseEvent.ROLL_OUT,onRollOutThumb); 
//can.addEventListener(MouseEvent.CLICK,onRollOverThumb); 


private function onRollOverThumb(event:MouseEvent):void 
{ 
event.target.setStyle('borderColor','0x000000'); 
    event.target.setStyle('borderThickness','3'); 
    event.target.setStyle('borderStyle','solid'); 
} 


private function onRollOutThumb(event:MouseEvent):void 
{ 
    event.target.setStyle('borderColor','0xCCCCCC'); 
    event.target.setStyle('borderThickness','1'); 
    event.target.setStyle('borderStyle','solid'); 
} 

我希望有這件事情很清楚,請問你有沒有在這方面做過工作,請回復

Tha提前NKS

ANKUR夏爾馬

回答

0
private function onRollOverThumb(event:MouseEvent):void 
      { 
       if(event.type=='click') 
       { 
        for(var j:int=0;j<viewparent.numChildren;j++) 
        { 
         viewparent.getChildAt(j).name="false"; 
        } 
        event.currentTarget.name="true"; 
        for(var i:int=0;i<viewparent.numChildren;i++) 
        { 
         if(viewparent.getChildAt(i).name=="true") 
         { 
          Canvas(viewparent.getChildAt(i)).setStyle('borderColor','0x000000'); 
          Canvas(viewparent.getChildAt(i)).setStyle('borderThickness','3'); 
          Canvas(viewparent.getChildAt(i)).setStyle('borderStyle','solid'); 
         } 
         else 
         { 
          Canvas(viewparent.getChildAt(i)).setStyle('borderColor','0xCCCCCC'); 
          Canvas(viewparent.getChildAt(i)).setStyle('borderThickness','1'); 
          Canvas(viewparent.getChildAt(i)).setStyle('borderStyle','solid'); 
         } 
        }  
       } 
       else 
       { 
        event.currentTarget.setStyle('borderColor','0x000000'); 
        event.currentTarget.setStyle('borderThickness','3'); 
        event.currentTarget.setStyle('borderStyle','solid'); 
       } 
      } 
      private function onRollOutThumb(event:MouseEvent):void 
      { 
       if(event.currentTarget.name=="false") 
       { 
        event.currentTarget.setStyle('borderColor','0xCCCCCC'); 
        event.currentTarget.setStyle('borderThickness','1'); 
        event.currentTarget.setStyle('borderStyle','solid'); 
       } 
      } 

我修改自己的代碼,添加一個name屬性的畫布

can.name="false" 

和它現在的工作,

可以甲腎上腺素一個告訴我,如何把一些選擇和取消選擇(一種淡入淡出效果),當黑色選擇被刪除時,它會以某種淡入淡出的方式被刪除,我們可以對邊界應用淡入淡出效果嗎?

0

怎麼樣實現的時候發生點擊被設置爲true「標誌」變量。然後,當ROLL_OUT發生時,檢查標誌是真還是假。如果屬實,請不要做任何事情,如果爲假,請移除/更改邊框。

+0

ryt,我曾經使用過,但我會再試一次,thanx – 2010-06-23 06:32:48

+0

thanx,這個概念是當然的 – 2010-06-23 07:57:14

相關問題