Не вставляется изображение JFrame

Всем привет! Я уже создала окно с помощью JFrame, но у меня с ним какие-то проблемы с загрузкой изображения. Может кто-то поможешь найти ошибку при вставке изображения? Программа работает без ошибок, но изображения нет. Скорее всего это связано с тем, что при передаче изображения в g.drawImage нет этого серенького img(на первой картинке нет, но при добавлении какого-то символа появляется, пробовала еще третий вариант, но там такая же фигня). первая картинкадобавила символтретий вариант

import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.io.File;
import java.io.IOException;

public class MyPanel extends JPanel {

private Image im;
public MyPanel()
{
    try {
        im = ImageIO.read(new File("workout-machine.png"));
    }catch (IOException e)
    {

    }
}
public void paintComponent(Graphics g)
{
    super.paintComponent(g);
    g.drawImage( im,22,22,null);
}
}

import sun.awt.image.ToolkitImage;


import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import java.io.BufferedWriter;
import java.io.File;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.URL;

public class MainWindow extends JFrame
{
final int WIDTH = 1000;
final int HEIGHT = 700;

JButton btnSend = new JButton("Войти");
JButton btnClear = new JButton("Регистрация");
JButton btnExit = new JButton("Закрыть");

URL url = getClass().getResource("icon.png");
ImageIcon icon = new ImageIcon(url);

JTextField loginField = new JTextField("login");
JPasswordField passwordField = new JPasswordField("Введите пароль");


   // Image image = Toolkit.getDefaultToolkit().getImage("workout-machine.png");

public MainWindow()
{
    MyPanel panel = new MyPanel();
    Container pane = getContentPane();
    pane.add(panel);

    /*this.setContentPane(new JPanel()
    {
        @Override
        public void paintComponent(Graphics g)
        {
            super.paintComponent(g);
            g.drawImage(image, 300,300, 300, 300, this);
        }
    });*/

    this.setIconImage(icon.getImage());



    setSize(WIDTH,HEIGHT);

    setResizable(false);

    setLayout(null);

    btnSend.setBounds(600,400,150,60);
    btnClear.setBounds(760,400,190,60);
    btnExit.setBounds(810,580,140,40);

    btnSend.setFont(new Font("Serif", Font.BOLD, 25));
    btnClear.setFont(new Font("Serif", Font.BOLD, 25));
    btnExit.setFont(new Font("Serif", Font.BOLD, 23));

    this.add(btnSend);
    this.add(btnClear);
    this.add(btnExit);

    loginField.setBounds(600,200,350,60);
    passwordField.setBounds(600, 300,350,60);

    loginField.setFont(new Font("Serif", Font.ITALIC, 20));
    passwordField.setFont(new Font("Serif", Font.ITALIC, 20));

    passwordField.setEchoChar('*');
    this.add(passwordField);
    this.add(loginField);



    




}

}

Ответы (0 шт):