Transparent JButton

¿Es posible hacer que un JButton sea transparente (incluido el borde) pero no el texto? Extiendo el JButton de swing y anulo esto:

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

pero hace que todo sea transparente, incluido el texto. Gracias.

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

Lo siguiente debería hacer el truco.

 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); } }