在synth中的组合框箭头按钮的样式

时间:2012-02-03 16:38:11

标签: java swing combobox look-and-feel synth

我正在使用Synth L& F创建Swing应用程序和样式。当我启用Synth L& F时,组合框箭头按钮变得不可见(我相信,应用了默认背景)。如果我单击箭头按钮所在的位置,它的行为与预期一致 - 显示选项列表。 我正在尝试显示它,但我找不到要应用于此按钮的正确绑定:

<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 个答案:

答案 0 :(得分:1)

正确绑定:

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

到目前为止,我还没有找到如何使用颜色和状态来设置组合框箭头按钮的样式,但预定义的图像可以正常工作并且足以满足我的需求:

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