Quel est le problème avec mon code applet qui ne rend pas le double tampon correctement.J'essaie et essayant.Mais échoué à obtenir une solution.Plzz Plz quelqu'un me dire ce qui est mal avec mon code.java double problème de tamponnage
import java.applet.* ;
import java.awt.* ;
import java.awt.event.* ;
public class Ball extends Applet implements Runnable
{
// Initialisierung der Variablen
int x_pos = 10; // x - Position des Balles
int y_pos = 100; // y - Position des Balles
int radius = 20; // Radius des Balles
Image buffer=null;
//Graphics graphic=null;
int w,h;
public void init()
{
Dimension d=getSize();
w=d.width;
h=d.height;
buffer=createImage(w,h);
//graphic=buffer.getGraphics();
setBackground (Color.black);
}
public void start()
{
// Schaffen eines neuen Threads, in dem das Spiel lไuft
Thread th = new Thread (this);
// Starten des Threads
th.start();
}
public void stop()
{
}
public void destroy()
{
}
public void run()
{
// Erniedrigen der ThreadPriority um zeichnen zu erleichtern
Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
// Solange true ist lไuft der Thread weiter
while (true)
{
// Verไndern der x- Koordinate
repaint();
x_pos++;
y_pos++;
//x2--;
//y2--;
// Neuzeichnen des Applets
if(x_pos>410)
x_pos=20;
if(y_pos>410)
y_pos=20;
try
{
Thread.sleep (30);
}
catch (InterruptedException ex)
{
// do nothing
}
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
}
}
public void paint (Graphics g)
{
Graphics screen=null;
screen=g;
g=buffer.getGraphics();
g.setColor(Color.red);
g.fillOval(x_pos - radius, y_pos - radius, 2 * radius, 2 * radius);
screen.drawImage(buffer,0,0,this);
}
public void update(Graphics g)
{
paint(g);
}
}
ce changement devrait i make.When offscreen image est dessinée l'image précédente restent également en screen.How pour effacer l'image précédente de l'écran ??
Pour commencer, vous pouvez arrêter de publier un exemple de code avec 10 méthodes vides. –
Salut russel. Vous avez seulement accepté 33% des 29 questions. Avez-vous vraiment reçu des réponses inutilisables à 20 de vos questions? S'il vous plaît examiner cela et remplacer le "plz plz plz" dans votre message par des informations plus détaillées sur ce qui ne fonctionne pas correctement. Ensuite, vous pourriez avoir de meilleures chances de recevoir des réponses. – chiccodoro
Ok, j'ai trouvé mon problème. J'ai créé une nouvelle image buffer = createImage (w, h); après 'screen.drawImage (buffer, 0,0, this);' et puis le problème de nettoyage est résolu.Mais maintenant un autre problème est apparu, ma balle en mouvement scintille aussi.Alors je me suis demandé si double tamponnage est effectué ici.Comment vérifier cela, tout le monde peut aider ?? – russell