так что в основном мой код работает
class Main extends JFrame implements Runnable {
public Main() {
//init everything
}
public void start() {
running = true;
Thread thread = new Thread(this);
thread.start();
}
public void run() {
while(running) {
render();
}
}
public void render() {
Image dbImage = createImage(width, height);
Graphics dbg = dbImage.getGraphics();
draw(dbg);
Graphics g = getGraphics();
g.drawImage(dbImage, 0, 0, this);
g.dispose();
}
public void draw(Graphics g) {
for(int y=0; y < map.length; y++) {
for(int x=0; x < map.length; x++) {
g.drawImage(map.map[x + y* map.MAP_DIM], x*MAP_DIM, y*MAP_DIM, this);
}
}
}
public static void main(String... args) {
Main main = new Main();
main.start();
}
}
но ничего не рисуется, все, что я вижу, серое. кто знает в чем может быть проблема? я пытался сделать repaint() в конце метода draw(), но все равно ничего.
paintComponent()
, а неpaint()
. AWT и Swing: методы рисования. Кроме того, объекты Swing GUI должны создаваться и управляться только на поток отправки событий. - person trashgod   schedule 04.01.2013