Hei!
Mulla tuli tälläinen virhe ilmoitus:
Exception in thread "Display" java.lang.IllegalStateException: Component must have a valid peer
at java.awt.Component$FlipBufferStrategy.createBuffers(Unknown Source)
at java.awt.Component$FlipBufferStrategy.(Unknown Source)
at java.awt.Component$FlipSubRegionBufferStrategy.(Unknown Source)
at java.awt.Component.createBufferStrategy(Unknown Source)
at java.awt.Canvas.createBufferStrategy(Unknown Source)
at java.awt.Component.createBufferStrategy(Unknown Source)
at java.awt.Canvas.createBufferStrategy(Unknown Source)
at dragonEscape.Level1.render(Level1.java:37)
at dragonEscape.Level1.run(Level1.java:154)
at java.lang.Thread.run(Unknown Source)
Mun Level1 Classin sisältö:
package dragonEscape;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.image.BufferStrategy;
import java.awt.image.ImageObserver;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
public class Level1 extends Canvas implements Runnable {
static GameLoop gl = new GameLoop();
public static int x = gl.getX();
public static int y = gl.getY();
public static boolean jumpping = gl.jumpping;
public static boolean falling = true;
public static double forward = 1;
public Image MetalBlock = new ImageIcon(this.getClass().getResource("MetalBlock.png")).getImage();
public Image Charracter = new ImageIcon(this.getClass().getResource("Poro.png")).getImage();
public void update() {
System.out.println("Leveys: " x " Korkeus: " y);
}
public void render() {
BufferStrategy bs = getBufferStrategy();
if(bs == null) {
createBufferStrategy(3);
return;
}
Graphics g = bs.getDrawGraphics();
Color bgcolor = new Color(169,169,169);
g.setColor(bgcolor);
g.fillRect(0, 0, 1000, 1000);
g.drawImage(MetalBlock, -5, 430, this);
g.drawImage(MetalBlock, -5, 376, this);
g.drawImage(MetalBlock, -5, 322, this);
g.drawImage(MetalBlock, -5, 430, this);
g.drawImage(MetalBlock, -5, 430, this);
g.drawImage(MetalBlock, -5, 430, this);
g.drawImage(MetalBlock, 43, 268, this);
g.drawImage(MetalBlock, 91, 268, this);
g.drawImage(MetalBlock, 139, 268, this);
g.drawImage(MetalBlock, 187, 268, this);
g.drawImage(MetalBlock, 235, 268, this);
g.drawImage(MetalBlock, 283, 268, this);
g.drawImage(MetalBlock, 331, 268, this);
g.drawImage(MetalBlock, 379, 268, this);
g.drawImage(MetalBlock, 427, 268, this);
g.drawImage(MetalBlock, 475, 268, this);
g.drawImage(MetalBlock, 523, 268, this);
g.drawImage(MetalBlock, 571, 268, this);
g.drawImage(MetalBlock, 619, 268, this);
g.drawImage(MetalBlock, 715, 268, this);
g.drawImage(MetalBlock, -5, 268, this);
g.drawImage(MetalBlock, 43, 430,
this);
g.drawImage(MetalBlock, 91, 430, this);
g.drawImage(MetalBlock, 139, 430, this);
g.drawImage(MetalBlock, 139, 376, this);
g.drawImage(MetalBlock, 187, 430, this);
g.drawImage(MetalBlock, 235, 430, this);
g.drawImage(MetalBlock, 283, 430, this);
g.drawImage(MetalBlock, 331, 430, this);
g.drawImage(MetalBlock, 379, 430, this);
g.drawImage(MetalBlock, 427, 430, this);
g.drawImage(MetalBlock, 475, 430, this);
g.drawImage(MetalBlock, 523, 430, this);
g.drawImage(MetalBlock, 571, 430, this);
g.drawImage(MetalBlock, 619, 430, this);
g.drawImage(MetalBlock, 715, 430, this);
g.drawImage(MetalBlock, 763, 430, this);
g.drawImage(MetalBlock, 811, 430, this);
g.drawImage(MetalBlock, 811, 52, this);
g.drawImage(MetalBlock, 811, -2, this);
g.drawImage(MetalBlock, 859, 160,this);
g.drawImage(MetalBlock, 859, 106, this);
g.drawImage(Charracter, x, y, this);
g.dispose();
repaint();
bs.show();
}
public static int width = 916;
public static int height = 487;
public static int scale = 3;
private Thread thread;
private JFrame frame;
private boolean running = false;
public synchronized void start() {
running = true;
thread = new Thread(this, "Display");
thread.start();
}
public synchronized void stop() {
running = false;
try
{
thread.join();
}catch (InterruptedException e) {
e.printStackTrace();
}
}
public void run() {
while (running){
update();
render();
jump();
fall();
}
}
}
Kiitos jos voitte auttaa :) Kumitin tosta jotain turhaa koska kaikki ei mahu!
Component must have a valid peer
PuhuvatBanaanit
2
181
Vastaukset
- foobarfoo
internertti ehdottelee että tuo poikkeus lentää tästä getBufferStrategy(), kun et ole asettanut mitään komponenttia näkyväksi (setVisible(true)).
- foobarfoo 2
Ja poista nuo rivit, unohdin
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa
En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod225124- 254278
- 272441
- 342234
- 371988
- 151908
En ole koskaan kokenut
Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka191587- 121521
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons211237Kerranki asiat oikein
Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa101164