透明的JButton

是否有可能使JButton透明(包括边框)而不是文本? 我扩展swing的JButton并覆盖这个:

@Override public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g.create(); g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0)); super.paint(g2); g2.dispose(); } 

但它使一切透明,包括文字。 谢谢。

 button.setOpaque(false); button.setContentAreaFilled(false); button.setBorderPainted(false); 

以下应该做的伎俩。

 public class PlainJButton extends JButton { public PlainJButton (String text){ super(text); setBorder(null); setBorderPainted(false); setContentAreaFilled(false); setOpaque(false); } // sample test method public static void main(String[] args) { JFrame frame = new JFrame(); JPanel pane = new JPanel(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); pane.add(new PlainJButton("HI!!!!")); frame.add(pane); frame.pack(); frame.setVisible(true); } }