Я программирую на Java, и я вхожу в GUI и графику.В моей программе я рисую изображение на JPanel и добавляю JPanel в главное окно.Проблема, с которой я сталкиваюсь, заключается в том, что когда я запускаю программу, изображение не отображается, пока я не изменю размер окна вручную.Вот соответствующий код:
Где изображение нарисовано:
public class painting extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
this.setBackground(Color.WHITE);
g.drawImage(Toolkit.getDefaultToolkit().getImage("image.png"), 0, 0, null);
}
}
Где JPanel добавлен в JFrame (c - GridBagConstraints):
public class GUI extends JFrame{
public GUI(){
painting Pnt = new painting();
c.gridx = 1; c.gridy = 0;
c.ipadx = 540; c.ipady = 395;
add(Pnt, c);
}
}
Где TheОкно настроено:
public class MainC{
public static void main (String args[]){
GUI gui = new GUI();
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gui.pack();
gui.setVisible(true);
gui.setTitle("Title");
}
}
Спасибо, Беннетт
РЕДАКТИРОВАТЬ: я заметил, что иногда он отображает изображение правильно, но потом, если я закрываю программу и пытаюсь снова, и это не работаетпока я не изменим его размер.
EDIT2: Вот файлы Класс GUI , Класс MainC