2011-07-01 61 views
0

我正在更新一個較舊的項目,用Flex 3編寫的一些新功能,我無法弄清楚如何做一些看起來很簡單的事情。動態設置Flex Panel標題和狀態顏色

我通過XML傳遞數據到面板和麪板的特性結合到這個XML,因此,例如:

<mx:Panel label="{[email protected]}" title="{[email protected]}" borderColor="{[email protected]}"/> 

我的問題很簡單:

如何設置使用在XML中傳遞的數據面板標題和狀態顏色?

您可以將titleStyleName設置爲styledeclaration的名稱,但titleColor或statusColor沒有樣式。

回答

0

感謝Jax,但是這並不是我正在尋找的答案。

比方說,顏色和titleStylename之間的區別是,你可以顏色的CSS屬性直接綁定到XML數據例如

「顏色= {_數據。@色}」

然而這不與titleStyleName炒作,因爲它需要設置一個新的styledecclaration。

我已經提出了一個解決方案,但是,我已經擴展了面板並添加了一個Bindable titleColor變量。然後,我在任何更改設置文本框的顏色 - 見下文:

' 公共類PanelWithColorTitle擴展面板 {

public function PanelWithColorTitle() 
    { 

    } 

    [Bindable] public var _titleColor:uint 

    public function setTitleAndStatusColor():void 
    { 
     trace(">>PanelWithColorTitle:setTitleAndStatusColor--") 
     titleTextField.setColor(_titleColor) 
     statusTextField.setColor(_titleColor) 

    } 

    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void 
    { 
     super.updateDisplayList(unscaledWidth, unscaledHeight); 
     setTitleAndStatusColor() 
    } 
} 

} '

感謝反正好看!