在flex中更改进度条颜色

时间:2011-01-05 11:12:23

标签: flex flash actionscript-3 mxml mxmlc

如何在以下代码中将进度条颜色更改为绿色

<?xml version="1.0" encoding="utf-8"?>
 <mx:Application 
xmlns:mx="http://www.adobe.com/2006/mxml" 
layout="absolute" 
width="100"
height="100"
creationComplete="init()">

<mx:Script>
    <![CDATA[
        import mx.controls.Alert;
        import flash.net.NetStream;

        private var myMic:Microphone;
        private var nc:NetConnection;


        private function init():void {
            initMic("0x19D319");


            myMic = Microphone.getMicrophone();
            myMic.setSilenceLevel(0);
            myMic.rate = 44;
            myMic.gain = 100;
            //myMic.setUseEchoSuppression(true);
            Security.showSettings(SecurityPanel.MICROPHONE);
            micLevel.visible = true;
            myMic.setLoopBack(true);


            addEventListener(Event.ENTER_FRAME, showMicLevel);
            if (myMic != null) 
            {
                micLevel.setProgress(myMic.activityLevel, 100);

            }


        }


        private function showMicLevel(event:Event):void{
            micLevel.setStyle("barColor", 0xf4b60f);

            switch (recordingState){
                case "idle" :

                    micLevel.setProgress(myMic.activityLevel, 100);
                    break;
                case "idle" :
                    Alert.show("2");
                    micLevel.setProgress(myMic.activityLevel, 100);
                    break;
                case "playing" :
                    micLevel.setProgress(ns.time, myDuration);
                    break;

            }
        }
        private function initMic(myColor:String):void{
            micLevel.setStyle("barColor", myColor);
        }

    ]]>
</mx:Script>

<mx:ProgressBar x="0" y="36" mode="manual" id="micLevel" label="" labelPlacement="bottom" width="100" fontSize="10" fontWeight="normal"/>


 </mx:Application>

3 个答案:

答案 0 :(得分:4)

您具有以下属性来控制进度条的外观

barColor="undefined"
barSkin="ProgressBarSkin"
borderColor="0xAAB3B3"
color="0x0B333C"
disabledColor="0xAAB3B3"

有关更多详细信息,请参阅documentation

答案 1 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:ProgressBar indeterminate="true" width="100%" 
        label="Ankur Sharma" bottom="10" barColor="#FF0000" trackHeight="15"/>

    <mx:ProgressBar indeterminate="true" width="100%" fontWeight="normal" 
        trackHeight="20" barColor="#333333" verticalGap="0" label="caseable.com"/>

</mx:Application>

嗨,检查这个进度条是否有效,可能是你想要这个

ANKUR

答案 2 :(得分:0)

必须将

barColor 样式属性设置为包含ProgressBar的容器。 来自docs:

  

这种风格对其他风格没有影响   组件,但可以设置为   容器来控制外观   发现里面的所有进度条。