Ayuda con Jframe y runnable
Publicado por Helb (11 intervenciones) el 07/06/2006 05:52:25
Tengo el siguiente código que desplaza un rectangulo atraves de la pantalla cambiando sus coordenadas, es un ejemplo de runnable implementado en un applet, pero yo necesito hacer la misma cosa con la única diferencia que debe ir en un JFrame ¿cómo lo hago? he probado pero algo no sale bien les pongo tambien el código que yo he modificado y que no funciona . Ayuuuda!! T_T
EL APPLET:
import java.applet.*;
import java.awt.*;
public class animacionenclase extends Applet implements Runnable {
private Thread hilo = null;
int j=0;
public void start (){
if (hilo== null){
hilo = new Thread(this);
hilo.start();
}
}
public void run (){
Thread hiloActual=Thread.currentThread();
while(hilo == hiloActual){
j++;
repaint();
try {
Thread.sleep( 500);
} catch(InterruptedException e){
}
}
}
public void paint(Graphics g){
g.drawRect( j*10, j*10, 50,50);
}
public void stop(){
hilo = null;
}
}
------------
AHORA AQUI ESTA EL MODIFICADO
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class animacion extends JFrame implements Runnable {
private FlowLayout esquema;
private Container contenedor;
private Thread hilo = null;
int j=0;
public animacion(){
super("PRUEBA DE RUNNABLE EN JFRAME");
esquema=new FlowLayout();
contenedor=getContentPane();
contenedor.setLayout(esquema);
contenedor.setBackground(Color.WHITE);
}
public void start (){
if (hilo== null){
hilo = new Thread(this);
hilo.start();
}
}
public void run (){
Thread hiloActual=Thread.currentThread();
while(hilo == hiloActual){
j++;
repaint();
try {
Thread.sleep( 500);
} catch(InterruptedException e){
}
}
}
public void paint(Graphics g){
g.drawRect( j*10, j*10, 50,50);
}
public void stop(){
hilo = null;
}
public static void main (String args[])
{
animacion aplicacion=new animacion();
aplicacion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Si alguien pudiera ayudarle a este pobre principiante.... :)
EL APPLET:
import java.applet.*;
import java.awt.*;
public class animacionenclase extends Applet implements Runnable {
private Thread hilo = null;
int j=0;
public void start (){
if (hilo== null){
hilo = new Thread(this);
hilo.start();
}
}
public void run (){
Thread hiloActual=Thread.currentThread();
while(hilo == hiloActual){
j++;
repaint();
try {
Thread.sleep( 500);
} catch(InterruptedException e){
}
}
}
public void paint(Graphics g){
g.drawRect( j*10, j*10, 50,50);
}
public void stop(){
hilo = null;
}
}
------------
AHORA AQUI ESTA EL MODIFICADO
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class animacion extends JFrame implements Runnable {
private FlowLayout esquema;
private Container contenedor;
private Thread hilo = null;
int j=0;
public animacion(){
super("PRUEBA DE RUNNABLE EN JFRAME");
esquema=new FlowLayout();
contenedor=getContentPane();
contenedor.setLayout(esquema);
contenedor.setBackground(Color.WHITE);
}
public void start (){
if (hilo== null){
hilo = new Thread(this);
hilo.start();
}
}
public void run (){
Thread hiloActual=Thread.currentThread();
while(hilo == hiloActual){
j++;
repaint();
try {
Thread.sleep( 500);
} catch(InterruptedException e){
}
}
}
public void paint(Graphics g){
g.drawRect( j*10, j*10, 50,50);
}
public void stop(){
hilo = null;
}
public static void main (String args[])
{
animacion aplicacion=new animacion();
aplicacion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Si alguien pudiera ayudarle a este pobre principiante.... :)
Valora esta pregunta


0