2011-05-19 23 views
0

我無法獲得JTextField的白色背景,我做錯了什麼? (我知道,圖像不居中文本畫中顯示,但I'va設定背景爲白色,沒有任何效果)Java合成器:無法在文本框中獲得白色背景

- XML -

<synth> 
    <style id="textfield"> 
     <state> 
      <font name="Verdana" size="12" /> 
      <color value="black" type="TEXT_FOREGROUND" /> 
      <color value="white" type="TEXT_BACKGROUND" /> 
      <color value="white" type="BACKGROUND" /> 
     </state> 
     <imagePainter method="textFieldBorder" path="images/ch_textfield.png" 
      sourceInsets="4 6 4 6" paintCenter="false" /> 
     <insets top="4" left="6" bottom="4" right="6" /> 
    </style> 
    <bind style="textfield" type="region" key="TextField" /> 
</synth> 

- - Java -

public class SynthCh extends JApplet { 
    public void init() { 
     try { 
      initLookAndFeel(); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
     } 
     setSize(300, 50); 
     initUi(); 
    } 
    public void initUi() { 
     JPanel jpMain = new JPanel(); 
     jpMain.setName("Root"); 
     JTextField textField = new JTextField(10); 
     jpMain.setLayout(new FlowLayout()); 
     this.add(jpMain); 
     jpMain.add(textField, BorderLayout.NORTH); 
    } 
    public static void initLookAndFeel() { 
     SynthLookAndFeel lookAndFeel = new SynthLookAndFeel(); 
     try { 
      lookAndFeel.load(SynthCh.class.getResourceAsStream("synthCh.xml"), 
            SynthCh.class); 
      UIManager.setLookAndFeel(lookAndFeel); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

回答

2

無法在默認情況下透明的組件上呈現背景。
在樣式開始處添加<opaque value="TRUE"/>

相關問題