помогите разобраться, хочу сделать background (добивать изображение на основной фон), собственно добавление идет строками
BufferedImage image = ImageIO.read(new File("bg.jpg"));
g.drawImage(image, 0, 0, this);
в итоге он жалуется на read(new File("bg.jpg") , мол это необработанный тип исключения, и просит добавить IOException, но добавить его в painComponent я тоже не могу - несовмещенный тип. Помогите разобраться что к чему, и как это есть.
сам исходник
import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
public class GameField extends JPanel {
private int width;
private int height;
private final int SIZE = 13;
private int cellHeight;
public GameField(){
}
@Override
protected void paintComponent(Graphics g){
width = getWidth();
height = getHeight();
cellHeight = height/SIZE;
g.setColor(Color.WHITE);
BufferedImage image = ImageIO.read(new File("bg.jpg"));
g.drawImage(image, 0, 0, this);
g.fillRect(0,0,width,height);
g.setColor(Color.BLACK);
g.drawLine(width/2, 0, width/2, height);
for (int i = 0; i < SIZE; i++){
g.drawLine(width/2, i*cellHeight, width,i*cellHeight);
}
}
}
Метод paintComponent
может вызываться очень часто, поэтому читать файл в нём не стоит. Да и архитектурно это сомнительное решение. Лучше перенести считывание в конструктор:
public class GameField extends JPanel {
...
private BufferedImage image;
public GameField() throws IOException {
image = ImageIO.read(new File("bg.jpg"));
}
...
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
Необходимо получить все данные игрока из базы данных, для проверки насколько это быстро произойдет я создал цикл из 100 юзеров
Мне нужно реализовать передачу файла с сервера на клиентФайл выбирается сервером и отправляется клиенту
В одной из папок приложения под андроид есть файл (а точнее несколько файлов) в одной и той-же ошибкой- "Unknown entity 'R'"