Foros del Web » Programación para mayores de 30 ;) » Java »

Figuras en movimiento y eventos de teclado

Estas en el tema de Figuras en movimiento y eventos de teclado en el foro de Java en Foros del Web. Hola a todos, tengo un problema que no consigo resolver. Quiero dibujar un rectángulo en un JLabel y moverlo, consigo hacerlo pero me falla en ...
  #1 (permalink)  
Antiguo 22/03/2012, 12:15
 
Fecha de Ingreso: abril-2009
Mensajes: 8
Antigüedad: 15 años, 8 meses
Puntos: 0
Figuras en movimiento y eventos de teclado

Hola a todos, tengo un problema que no consigo resolver.

Quiero dibujar un rectángulo en un JLabel y moverlo, consigo hacerlo pero me falla en varias partes y no sé por qué.

Os pego código:

public class Figuras extends JFrame {

private int x;
private int y;

public Figuras()
{

super("Holaaa");

Container contentPane = super.getContentPane();

JLabel label = new JLabel("Holaasfdas");

contentPane.add(label);

super.setSize(600, 600);
super.setVisible(true);

setDefaultCloseOperation(EXIT_ON_CLOSE);

addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) { mover(); }
});

x = 40;
y = 40;

}

public void mover()
{

x += 20;
y += 20;
repaint();

}


Aquí creo que JFrame, añado un JLabel, le doy un tamaño, lo pongo visible y añado el addKeyListener. Las variables "x" e "y" son para mover el rectángulo como se puede ver en el método mover();.

Luego sobreescribo el método paint(Graphics g):

public void paint(Graphics g)
{

paintComponents(g);
g.setColor(Color.black);
g.drawRect(this.x, this.y, 100, 50);
g.setColor(Color.green);
g.fillRect(40, 80, 100, 50);

}

El segundo rectángulo lo dibujo pero no hago nada con él.

Pues tengo 2 problemas, el primero es que el KeyListener no me funciona bien, cuando creo el objeto, no funciona nada cuando pulso una tecla, además, no me aparecen dibujados los dos rectángulos. En cambio, cuando minimizo la ventana o cambio el foco, me aparecen los dos rectángulos y me funciona perfectamente el KeyListener, se me mueve el rectángulo sin problemas, etc.

Llevo más de 1 hora buscando por internet, intenté hacer de todo y nada, no consigo arreglarlo, estoy perdiendo el tiempo de una manera increíble...

Agradecería mucho vuestra ayuda, de verdad.

Un saludo y gracias.

Etiquetas: eventos, figuras, jar, movimiento, teclado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:31.