2012-02-03 81 views
1

我正在創建Swing應用程序並使用Synth L設計樣式。當我啓用合成器L &時,組合框箭頭按鈕變得不可見(我相信,默認背景被應用)。如果我點擊一個箭頭按鈕的地方,它的行爲如預期 - 顯示選擇列表。 我試圖表現出來,但我無法找到正確的結合被應用到該按鈕:合成器中的組合框箭頭按鈕的樣式

<style id="arrowStyle"> 
    <state value="DEFAULT"> 
     <insets top="4" left="15" bottom="4" right="4"/> 
     <color value="RED" type="BACKGROUND"/> 
     <color value="RED" type="TEXT_BACKGROUND"/> 
     <color value="GREEN" type="TEXT_FOREGROUND"/> 
    </state> 
    <state value="ENABLED"> 
     <insets top="4" left="15" bottom="4" right="4"/> 
     <color value="RED" type="BACKGROUND"/> 
     <color value="RED" type="TEXT_BACKGROUND"/> 
     <color value="GREEN" type="TEXT_FOREGROUND"/> 
    </state> 
    <state value="PRESSED"> 
     <insets top="4" left="15" bottom="4" right="4"/> 
     <color value="RED" type="BACKGROUND"/> 
     <color value="RED" type="TEXT_BACKGROUND"/> 
     <color value="GREEN" type="TEXT_FOREGROUND"/> 
    </state> 
    <state value="SELECTED"> 
     <insets top="4" left="15" bottom="4" right="4"/> 
     <color value="RED" type="BACKGROUND"/> 
     <color value="RED" type="TEXT_BACKGROUND"/> 
     <color value="GREEN" type="TEXT_FOREGROUND"/> 
    </state> 
</style> 
<bind style="arrowStyle" type="name" key="ComboBox.arrowButton"/> 

如果我申請這個樣式,按鈕不會出現。我不知道問題在哪裏 - 我使用正確的狀態嗎?顏色類型?捆綁?

感謝

回答

1

正確的綁定:

<bind style="arrowButton" key="ComboBox.arrowButton" type="name"/> 

到目前爲止,我還沒有找到如何使用顏色和各國風格的組合框箭頭按鈕,但預定義的形象工程,並充分滿足我的需要:

<imagePainter method="arrowButtonBackground" path="/controls/combobox_arrow_button.jpg" sourceInsets="8 8 8 8"/>