Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Как указать state в CSS для Panel (http://www.flasher.ru/forum/showthread.php?t=153240)

AntonSurkont 30.03.2011 19:38

Как указать state в CSS для Panel
 
Здравствуйте уважаемые программисты.
К примеру у меня такой Panel
Код AS3:

<s:Panel>
  <s:states>
    <s:State name="not_active"/>
    <s:State name="active"/>
  </s:states>
</s:Panel>

И есть CSS
Код:

s|Panel {
  backgroundColor: #00FF00;
  color: #FF0000;
  cornerRadius: 30;
  dropShadowVisible: false;
  borderAlpha: 1;       
  borderColor: #0000FF;       
  borderVisible: true;
  chromeColor: #FFFF00;       
  contentBackgroundAlpha: 1;       
  contentBackgroundColor: #00FFFF;
  focusColor: #FFFFFF;
  /*skinClass:ClassReference("skins.PanelSkin");*/
}

Подскажите плиз как сделать так чтобы эти настройки CSS работали только для панелек у которых стэйт active.

OFFmind 06.04.2011 15:35

Скорее всего так сделать нельзя. Но это только мое предположение:
В css вы ставите стиль классу Panel. А states - не влияют на этот класс. Т.е. например у вас в проекте два компонента типа Panel - у каждого могут быть разные states.

Мое решение:
1. создайте в CSS класс не глобально для Panel, а именно для стэйта, например(.defaultPanelState)
2. в самом Panel, во Flex, в нужном стэйте задайте нужное имя css класса.

AntonSurkont 06.04.2011 19:18

Спасибо

OFFmind 13.04.2011 18:53

Сегодня прочитал, что можно использовать css для разных стэйтов. Делается это так:

Код AS3:

 <fx:Style>
        @namespace s "library://ns.adobe.com/flex/spark";
        @namespace mx "library://ns.adobe.com/flex/mx";
 
        s|Button:up {
            baseColor: black;
            color: #FFFFFF;
        }
 
        s|Button:over {
            baseColor: gray;
            fontWeight: "bold";
            color: #FFFFFF;
        }
 
        s|Button:down {
            baseColor: blue;
            fontWeight: "bold";
            color: #FFFF66;
        }
    </fx:Style>

из официальной документации. Не проверял.


Часовой пояс GMT +4, время: 21:42.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.