Witam, zacząłem przygodę z Javą w ramach projektu i utknąłem przy wyświetlaniu obrazka. Czytałem kilka tutoriali ale one są dla mnie nie jasne. Wszystkie mają metodę na podobę
public void paint(Graphics g) {
g.drawImage(img, 0, 0, null);
}
Nie rozumiem jej działania, jak to jest, że sie wyrysowuje obrazek a nigdzie nie widzę wywołania tej metody. Jakby ktoś mi napisał co gdzie mam dodać to mojego kodu żeby img został wyrysowany, byłbym wdzięczny.
package Game;
import Obiekt.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;
import java.util.ArrayList;
public class Screen extends Component{
private static final int SZEROKOSC = 800;
private static final int WYSOKOSC = 600;
private BufferedImage img;
ArrayList Background = new ArrayList();
public void paint(Graphics g){
g.drawImage( img, 0, 0, null);
}
private void LoadImage(int numer){
try{
switch(numer){
case 0: img = ImageIO.read(new File("gfx\\grass.bmp"));
break;
case 1: img = ImageIO.read(new File("gfx\\sand.bmp"));
break;
}
}
catch (IOException b_img){
System.out.println("Nie udało się załadować img");
}
}
private void LoadMap(String nazwa){
try{
FileReader fr = new FileReader(nazwa);
BufferedReader br = new BufferedReader(fr);
String linia;
int numer;
for(int j=0;(linia=br.readLine())!=null;j++){
for(int i=0;i
numer=(linia.charAt(i)-48);
System.out.println(numer);
LoadImage(numer);
Background.add(new Unmovable(40*i,40*j,img));
}
}
fr.close();
}
catch (IOException b_map){
System.out.println("Nie udało się załadować mapy");
}
}
private void ReDrow(){
for(int i=0;i
}
}
public Screen(){
JFrame okno = new JFrame(".:Student RPG:.");
JPanel panel = (JPanel)okno.getContentPane();
setBounds(0,0,SZEROKOSC,WYSOKOSC);
panel.setPreferredSize(new Dimension(SZEROKOSC,WYSOKOSC));
panel.setLayout(null);
panel.add(this);
okno.setBounds(0,0,SZEROKOSC,WYSOKOSC);
okno.setVisible(true);
okno.addWindowListener( new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args){
Screen Game = new Screen();
Game.LoadMap("maps\\map1.maps");
Game.ReDrow();
}
}
Przykład tutka http://download.oracle.com/javase/tutorial/2d/images/examples/LoadImageApp.java