Почему в этом коде происходит событие roll_out? - PullRequest
0 голосов
/ 24 мая 2010

Я сделал этот короткий пример, чтобы продемонстрировать некоторые проблемы, с которыми я сталкиваюсь.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Canvas
        id="buttonCanvas"
        x="100" y="100" opaqueBackground="#000000" width="80%" height="300"
        creationComplete="init(event)">
        <mx:Button x="5" y="5"/>
        <mx:Button x="5" y="50"/>

    </mx:Canvas>


    <mx:Script>
    <![CDATA[
        private function init(event:Event):void{
            buttonCanvas.addEventListener(MouseEvent.ROLL_OUT, function(event:Event):void{
                buttonCanvas.opaqueBackground=(buttonCanvas.opaqueBackground==0)? 0x666666:0;
            });         
        }    
    ]]>
    </mx:Script>
</mx:Application>

Я не понимаю следующее:

  1. Почему процентные или абсолютные размеры не влияют на размер холста?
  2. Почему событие roll_out срабатывает, когда мышь оставляет кнопку (даже если она все еще находится внутри холста).

Я схожу с ума, пытаясь понять это. Любая помощь будет принята с благодарностью!

Ответы [ 3 ]

1 голос
/ 16 марта 2011

Может быть, вы хотите использовать стиль backgroundColor, а не свойство opaqueBackground?

0 голосов
/ 15 марта 2011

Отметьте в этом сообщении! В нем четко видна разница между MouseOut и Roll Out.Надеюсь, это поможет.

0 голосов
/ 24 мая 2010

Просто взглянув на это, я могу сказать, что значением по умолчанию для opaqueBackground является null , а не 0 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...