2011-04-13 21 views
5

¿Cómo puedo hacer un JButton en java, invisible, pero que se puede hacer clic?Haciendo invisible un JButton, ¿pero se puede hacer clic?

button.setVisible(false); 

hace que el botón invisible, pero permite hacer clic, ¿hay algún método que hace que sea invisible, pero se puede hacer clic?

He intentado hacer:

button.setVisible(false); 
button.setEnabled(true); 

pero eso tampoco funcionó. Quiero hacer esto porque quiero tener un botón con una imagen; si pongo el JButton invisible sobre la imagen, el botón responderá cuando haga clic en la imagen o en el botón invisible.

+0

¿Cuál es el punto de esto ?! –

+0

¿Por qué ????????????????? – Franky

+0

Ayudame, quizás aprendiendo Java? Solo quiero crear un botón invisible, es tan simple como eso. – Stan

Respuesta

19

Creo que te refieres a transparente, en lugar de invisible.

Esto hará que un botón se puede hacer clic que no es "visible", es decir, transparente:

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

Esto responde a su pregunta, pero si su intención es hacer un hacer clic en la imagen, hay una mejor manera para eso también:

ImageIcon myImage = new ImageIcon("images/myImage.jpg"); 
JButton button = new JButton(myImage); 
+0

Sí, esto era exactamente lo que quería! ¡Gracias! – Stan

+0

@Stan: haga clic en la marca junto a la respuesta para aceptarlo. – Town

+0

Sí, dice que tengo que esperar 1 minuto. – Stan

0

Bueno, no hay ningún punto cuanto que no hay un punto que no hay manera estándar de hacer esto, pero es posible anular el método de pintura de JButton y no hacer nada en ella como:

class InvisibleButton extends JButton { 

    @Override 
    public void paint(Graphics g){ 
      // Do nothing here 
    } 
} 

Intenta jugar con esto.

Cuestiones relacionadas