Flex Alert.styleName不适合我

时间:2011-09-13 17:26:52

标签: css flex alert

我有这段代码,但样式没有被应用。我见过articles on the web这应该有用。有什么想法吗?

var alert:Alert = Alert.show("You have not saved you changes.\n\nWould you like to save now?",
                             "Save Answers?",
                             Alert.NO | Alert.YES | Alert.CANCEL, 
                             this, 
                             handleUnsavedChanges,
                             null, 
                             Alert.YES);

alert.styleName = "alertStyle";

尝试使用样式表中的Alert类设置样式似乎有效,但会发出警告。我想找到“认可”的方式。

顺便说一下,这是Flex 3。

PS - 我也试过像

这样的东西
alert.setStyle("backgroundColor", "0x00FF00");

但这似乎也不起作用。我觉得我需要打电话告诉警告框重绘自己,但我不知道如何。

1 个答案:

答案 0 :(得分:1)

您可以创建自定义类以使用特定的css:

public class CustomAlert extends Alert {}

...然后在CSS中

CustomAlert 
{
    background-color: #00FF00;
}

或者更复杂的例子:

        import mx.styles.StyleManager;
        private function init():void {
            alertCSS = StyleManager.getStyleDeclaration("Alert");
        }

        private function showAlert(color:Object):void {
            alertCSS.setStyle("backgroundColor", "0x00FF00");
            alert = Alert.show("The quick brown fox...");
        }