Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Xedrox en 17 Abril 2011, 22:41 pm



Título: Usar una imagen como JButton (NetBeans)
Publicado por: Xedrox en 17 Abril 2011, 22:41 pm
Creo que el titulo lo dice todo, porbe de agregarle un "Icon" en la propiedades del JButton pero no me gusta como queda, abra alguna forma de poner una imagen (en este caso en redondel.png) y hacerla como un boton? Muchas Gracias Saludos


Título: Re: Usar una imagen como JButton (NetBeans)
Publicado por: Castiblanco en 18 Abril 2011, 01:52 am
Creo que entiendo lo que quieres hacer, no sé :P

Pues leí y me pareció curioso así que decidí hacerlo.

Entonces, creé un botón y le metí una imagen y ya normal... no sé si eso es lo que buscabas.

Código
  1. import java.awt.*;
  2. import javax.swing.*;
  3. import java.awt.event.*;
  4.  
  5. public class pruebaImagen extends JFrame implements ActionListener {
  6.  
  7. ImageIcon imagen = new ImageIcon("imagen.png");
  8. JButton etiqueta = new JButton(imagen);
  9.  
  10. public pruebaImagen() {
  11. super("Imagen");
  12.  
  13. getContentPane().add(etiqueta);
  14.  
  15. etiqueta.addActionListener(this);
  16.  
  17. this.setSize(300, 150);
  18. }
  19.  
  20. public static void main(String[] args) {
  21. pruebaImagen p = new pruebaImagen();
  22. p.show(true);
  23.  
  24. p.addWindowListener(new WindowAdapter() {
  25. public void windowClosing(WindowEvent evt) {
  26. System.exit(0);
  27. }
  28. });
  29. }
  30.  
  31.    public void ActionListeners(ActionEvent e) {
  32.    }
  33.  
  34. @Override
  35. public void actionPerformed(ActionEvent arg0) {
  36. System.out.println("bla bla bla bla");
  37.  
  38. }
  39. }
  40.  

La imagen en este caso "imagen.png" está en: workspace\nombreProyecto

Supongo que ese código tendrá muchas cosas que no necesita, pero igual estoy aprendiendo hasta ahora y así me quedó, si algo me corrigen lo que vean :P

PD: Yo lo hago en Eclipse, pero hasta donde sé funciona igual en NetBeans...

Saludos y si es eso bien, sino me explicas mejor a ver si entiendo :P


Título: Re: Usar una imagen como JButton (NetBeans)
Publicado por: 1mpuls0 en 18 Abril 2011, 02:33 am
Hola qué tal.

Pienso que en vez de botón quiere una imagen con un tipo de evento algo así.

Código
  1. import javax.swing.JFrame;
  2. import javax.swing.JLabel;
  3. import javax.swing.WindowConstants;
  4. import java.awt.FlowLayout;
  5. import javax.swing.ImageIcon;
  6. import java.awt.event.MouseAdapter;
  7. import java.awt.event.MouseEvent;
  8. import javax.swing.JOptionPane;
  9.  
  10. public class PruebaImagenBoton extends JFrame {
  11.  
  12. private JLabel boton;
  13.  
  14.    public static void main(String args[]) {
  15.     PruebaImagenBoton pib = new PruebaImagenBoton();
  16.     pib.setVisible(true);
  17.     pib.setLocationRelativeTo(null);
  18.    }
  19.  
  20.    public PruebaImagenBoton() {
  21.        initComponents();
  22.    }
  23.  
  24.    private void initComponents() {
  25.  
  26.        boton = new JLabel();
  27.  
  28.        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
  29.        setTitle("Prueba Imagen Boton");
  30.        setResizable(false);
  31.        getContentPane().setLayout(new FlowLayout());
  32.  
  33.        boton.setIcon(new ImageIcon(getClass().getResource("imagen.png")));
  34.        boton.addMouseListener(new MouseAdapter() {
  35.            public void mouseClicked(MouseEvent evt) {
  36.                JOptionPane.showMessageDialog(null,"Hola =)");
  37.            }
  38.        });
  39.        getContentPane().add(boton);
  40.  
  41.        pack();
  42.    }
  43.  
  44. }
  45.  

Saludos.