15/12/2014, 03:22
|
| | Fecha de Ingreso: noviembre-2014
Mensajes: 28
Antigüedad: 10 años Puntos: 0 | |
Respuesta: al agregar las imagenes el programa se congela muy buenas, no estoy poniendo ningún invoke later, estuve probando ahora pero no sé muy bien donde encajarlo, el invoke later solo funciona en la misma clase? imagino que si pudiera llamar al método paint del jpanel antes de nada mi problema estaría solucionado,porque al redimensionar la ventana creo que el jframe llama al método paint automaticamente y a partir de ahí el programa funciona con normalidad, pero no he sido capaz
LO INICIO AQUI (lo único que hago es llamar a la clase del jframe)
----------------------------------------------------------------------------------------------------------
public class Rebot {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws InterruptedException {
Ventana ventana=new Ventana();
}
}
EL PRINCIPIO DE LA CLASE DEL JFRAME
-------------------------------------------------------------------------------------------------------------------
public Ventana() throws InterruptedException{
int anchura=407;
int altura=500;
this.setBounds(0,0,anchura,altura);
this.setTitle("ventana");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
this.setLocationRelativeTo(null);
this.setVisible(true);
//objetos creados
panel=new Panel();
//añadidos
this.add(panel);
while (true){
panel.repaint();
Thread.sleep(5);
}
este es el principio de la clase del panel
----------------------------------------------------------------------------------------------
public Panel(){
pelota=new Pelota();
rectangulo= new Rectangulos();
url=this.getClass().getResource("/imagenes/espacio.jpg");
}
//pinturas
public void paint (Graphics g) {
imagen=new ImageIcon(url).getImage();
g.drawImage(imagen,0,0,this.getWidth(),this.getHei ght(),this);
g.drawImage(pelota.imagen,pelota.xpelota,pelota.yp elota,30,30,this) ;
Última edición por dr4; 15/12/2014 a las 03:28 |