Results 1 to 8 of 8
  1. #1
    Join Date
    Jan 2011
    Posts
    6
    Post Thanks / Like
    Rep Power
    0

    Cool Cargar imagen en aplicacion Java swing

    Hola, estoy usando netbeans 6.9 y estoy programando una aplicacion GUI, quiero subir una imagen q se encuentre en el escritorio u otro dispositivo externo a mi aplicacion, es decir cuando mi aplicacion se este ejecutando, al pulsar un boton de ese Jframe me muestre dispositivos para subir la imagen a mi aplicacion y q se muestre en ella. gracias.


  2. #2
    Join Date
    Sep 2009
    Location
    Otra dimension
    Posts
    2,646
    Post Thanks / Like
    Rep Power
    2513

    Default

    te voy a pasar un codigo chingon que hice

    que realiza eso que quieres

    PHP Code:
    private void buscar_imagenActionPerformed(java.awt.event.ActionEvent evt) {                                              
            
    // TODO add your handling code here:
            
    dialogo=new JFileChooser();
            
    FileNameExtensionFilter filter = new FileNameExtensionFilter("Imagenes JPG""jpg");
            
    dialogo.setFileFilter(filter);
            
    dialogo.setDialogTitle("Abrir una imagen XD");
            
    int valor dialogo.showOpenDialog(this);
            if(
    valor == JFileChooser.APPROVE_OPTION) {
                
    File fichero dialogo.getSelectedFile();
                
    String ruta=fichero.getPath();
                
    ruta2=new StringBuffer(ruta);
                
    int cont=1;
                for(
    int i=0;i<ruta.length();i++)
                {
                    if(
    ruta.charAt(i)=='\\')
                    {
                        
    ruta2=ruta2.insert(i+cont'\\');
                        
    cont++;
                    }
                }

                
    System.out.println(ruta2);
                
    panel1.remove(imagen);
                
    imagen=new JLabel(String.valueOf(ruta2));
                
    panel1.add(imagen);
                
    imagen.setBorder(javax.swing.BorderFactory.createEtchedBorder());
                
    imagen.setBounds(2010260260);
            }


        } 
    este codigo lo pones en un boton

    en un actionlistener

    y lo que hace, es abrir un cuadro de dialogo para buscar la imagen

    cuando la seleccionas, te la pone en una label
    Solicito curso de adivinacion para los post sin explicacion del error/problema/ide de desarrollo/s.o./framework/plataforma/ de usuarios tontos de este foro
    http://www.forodejava.com/album.php?albumid=11

  3. #3
    Join Date
    Jan 2011
    Posts
    6
    Post Thanks / Like
    Rep Power
    0

    Exclamation gracias

    gracias, pero me salen errores por de declaracion de variables, no se si debo de declarar los valores de las variables: dialogo o fichero o ruta2, e imagen. Jlabel es la etiqueta que debo de colocar en el Jframe para q aparesca la imagen?., te envio una imagen. saludos
    Attached Images Attached Images

  4. #4
    Join Date
    Dec 2010
    Posts
    38
    Post Thanks / Like
    Rep Power
    178

    Default

    Prueba con este codigo:


    Code:
    import javax.swing.*;
    import javax.swing.JFileChooser;
    import javax.swing.filechooser.FileNameExtensionFilter;
    import java.awt.*;
    
    public class GraphicForm extends javax.swing.JFrame {
        private JDialog dialogo;
        private JFileChooser seleccionarArchivo;
        private FileNameExtensionFilter filtroImagenes;
        private JMenu jMenu1;
        private JMenuBar jMenuBar1;
        private JMenuItem menuCambiarFondo;
        private ImagePanel picturePanel;
        
        public GraphicForm() {
            initComponents();
        }
    
        private void initComponents() {
            dialogo = new javax.swing.JDialog();
            seleccionarArchivo = new JFileChooser();
            filtroImagenes = new FileNameExtensionFilter("Imagenes .jpg .gif .png", "jpg", "jpeg", "gif", "png");
            picturePanel = new ImagePanel();
            jMenuBar1 = new JMenuBar();
            jMenu1 = new JMenu();
            menuCambiarFondo = new JMenuItem();
    
            addWindowListener(new java.awt.event.WindowAdapter() {
                public void windowClosing(java.awt.event.WindowEvent evt) {
                    exitForm(evt);
                }
            });
    
            getContentPane().add(picturePanel, java.awt.BorderLayout.CENTER);
    
            jMenu1.setMnemonic('A');
            jMenu1.setText("Archivo");
            jMenu1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    jMenu1ActionPerformed(evt);
                }
            });
    
            menuCambiarFondo.setText("Cambiar fondo");
            menuCambiarFondo.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    menuCambiarFondoActionPerformed(evt);
                }
            });
    
            jMenu1.add(menuCambiarFondo);
    
            jMenuBar1.add(jMenu1);
    
            setJMenuBar(jMenuBar1);
    
            java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-531)/2, (screenSize.height-419)/2, 531, 419);
        }
    
        private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) {
        }
    
        private void menuCambiarFondoActionPerformed(java.awt.event.ActionEvent evt) {
            seleccionarArchivo.setFileFilter(filtroImagenes);
            seleccionarArchivo.setDialogTitle("Cambiar fondo");
            int result = seleccionarArchivo.showOpenDialog(this);
            if (result == seleccionarArchivo.APPROVE_OPTION){
                String filename = seleccionarArchivo.getSelectedFile().getAbsolutePath();
                Image image = Toolkit.getDefaultToolkit().getImage(filename);
                picturePanel.setImage(image);
                picturePanel.setVisible(true);
                picturePanel.repaint();
            }
        }
    
        private void exitForm(java.awt.event.WindowEvent evt) {
            System.exit(0);
        }
    
        public static void main(String args[]) {
            new GraphicForm().setVisible(true);
    
        }
    
    }

    Code:
    import java.awt.*;
    import javax.swing.*;
    import java.io.*;
    
    
    public class ImagePanel extends JPanel implements Serializable {
        Image image = null;
    
        public ImagePanel(Image image) {
            this.image = image;
        }
        public ImagePanel() {
    
        }
        public void setImage(Image image){
            this.image = image;
        }
    
        public Image getImage(Image image){
            return image;
        }
    
        public void paintComponent(Graphics g) {
            super.paintComponent(g);
            if (image != null) {
                int height = this.getSize().height;
                int width = this.getSize().width;
                g.drawImage(image,0,0, width, height, this);
            }
        }
    }


    Ya me dirás si te funciona. Si tienes alguna duda manda me un mail o envía me código de tu aplicación.
    Last edited by nramire1; 17-01-2011 at 14:57. Reason: El código va entre llaves [CODE][/CODE] Selecciona el código y presiona el botón #

  5. #5
    Join Date
    Jan 2011
    Posts
    6
    Post Thanks / Like
    Rep Power
    0

    Default gracias

    GRACIAS, me sirvio ese codigo, ahora lo acoplare con el resto de mi aplicacion, saludos.

  6. #6
    Join Date
    Jun 2011
    Posts
    2
    Post Thanks / Like
    Rep Power
    0

    Default

    hola amigo, si fuese posible me podrias pasar el codigo ya hecho en netbeans porque he estado intentando pero aun no compila, me salen muchisimos errores.. gracias
    mi correo es: locoxti_15_15_15@hotmail.com

  7. #7
    Join Date
    Jun 2011
    Posts
    2
    Post Thanks / Like
    Rep Power
    0

    Default

    Hola amigo, si fuese posible me podrias pasar el codigo ya hecho en netbeans porque he estado intentando pero aun no compila, me salen muchisimos errores.. gracias
    mi correo es: locoxti_15_15_15@hotmail.com

  8. #8
    Join Date
    Dec 2010
    Posts
    38
    Post Thanks / Like
    Rep Power
    178

    Default

    No ha encontrado la
    respuesta aquí?
    Regístrate, preguntar y
    obtener una respuesta
    adecuada en cuestión de minutos!


    Un registro de minutos: clic

    Sin publicidad para los miembros!
    Hola richirm,
    Te envié mail con el código. Si alguien le interesa puede descargar el ejemplo de aquí.

Similar Threads

  1. Problema con editor HTML en aplicación SWING
    By airlex_23 in forum AWT-SWING
    Replies: 0
    Last Post: 17-03-2011, 13:39
  2. cargar imagen
    By chopaqui in forum Java Básico
    Replies: 4
    Last Post: 05-08-2010, 15:36
  3. aplicacion swing,con base de datos
    By wilcas in forum Java Básico
    Replies: 1
    Last Post: 04-08-2010, 04:47
  4. cargar imagen desde clase externa
    By fairway in forum Java Básico
    Replies: 0
    Last Post: 25-03-2009, 22:10
  5. Replies: 1
    Last Post: 14-05-2008, 19:01

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •