Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/03/2007, 18:59
Avatar de ah_puch
ah_puch
 
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 19 años, 4 meses
Puntos: 3
De acuerdo Re: Dibujar figuras sobre JFrame

Hola.

Mira uno de los metodos mas sencillos de hacer lo que pides es ir al metodo nativo de pintado CANVAS y utilizar los metodos de pintado de java lo que vendria ciendo la graphics te quedaria un codigo algo asi:
Código PHP:
    import java.awt.Canvas;
    
import java.awt.Dimension;
    
import java.awt.Graphics;
    
import java.awt.event.WindowAdapter;
    
import java.awt.event.WindowEvent;
    
import java.awt.image.BufferedImage;
    
import java.net.URL;
    
    
import javax.imageio.ImageIO;
    
import javax.swing.JFrame;
    
import javax.swing.JPanel;
    
    public class 
Imagenes_Java extends Canvas {
      public static final 
int WIDTH 800;
      public static final 
int HEIGHT 600;
      
      public 
Imagenes_Java() {
        
JFrame ventana = new JFrame("Prueba de Imagen");
        
JPanel panel = (JPanel)ventana.getContentPane();
        
setBounds(0,0,WIDTH,HEIGHT);
        
panel.setPreferredSize(new Dimension(WIDTH,HEIGHT));
        
panel.setLayout(null);
        
panel.add(this);
        
ventana.setBounds(0,0,WIDTH,HEIGHT);
        
ventana.setVisible(true);
        
ventana.addWindowListener( new WindowAdapter() {
          public 
void windowClosing(WindowEvent e) {
            
System.exit(0);
          }
        });
      }
      
      public 
BufferedImage Cargar_Imagen(String nombre) {

        
URL url=null;
        try {
          
url getClass().getClassLoader().getResource(nombre);
          return 
ImageIO.read(url);
        } catch (
Exception e) {
          
System.out.println("No se pudo cargar la imagen " nombre +" de "+url);
          
System.out.println("El error fue : "+e.getClass().getName()+" "+e.getMessage());
          
System.exit(0);
          return 
null;
        }
      }
      
      public 
void paint(Graphics g) {
        
BufferedImage imagen Cargar_Imagen("NOMBRE DE MI IMAGEN");
        
g.drawImage(imagen4040,this);
    }
      
      public static 
void main(String[] args) {
        
Imagenes_Java img = new Imagnes_Java();
      }
    } 
Este codigo te permite cargar una imagen de forma diecta sobre un panel con propiedades de repintado al recurrir a los metodos nativos de java te permitira generar frames "LIBRES" en los cuales puedes poner y quietar elementos de manera manual.

Espero te sea de ayuda. S U E R T E ......!!!
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com