Подтвердить что ты не робот

Как я могу отобразить BufferedImage в JFrame?

Я хочу отобразить варианты одного и того же изображения в одном и том же JFrame, например, отобразить изображение в JFrame, а затем заменить его на серый масштаб того же изображения.

4b9b3361

Ответ 1

При обновлении изображения вам придется перекрасить JFrame.

Вот то, что вызывает простой google по теме: (Я использую эти обучающие программы для всего моего Java-кодирования)

Учебник по Java: рисование изображения

Ответ 2

На основе решения camickr (для ленивых, подобных мне, которые хотят скопировать код для копирования/вставки), выполните следующие иллюстрации:

JFrame frame = new JFrame();
frame.getContentPane().setLayout(new FlowLayout());
frame.getContentPane().add(new JLabel(new ImageIcon(img)));
frame.getContentPane().add(new JLabel(new ImageIcon(img2)));
frame.getContentPane().add(new JLabel(new ImageIcon(img3)));
frame.pack();
frame.setVisible(true);
//frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // if you want the X button to close the app

Ответ 3

Я не уверен, что вы сомневаетесь, но если у вас есть BufferedImage, вы просто создаете ImageIcon, используя изображение, затем добавляете значок в JLabel и добавляете метку в графический интерфейс, как и любой другой компонент.

Если вы задаетесь вопросом о том, как создать шкалу серого, я предлагаю вам искать в Интернете эти термины в качестве ключевых слов поиска, я уверен, что вы найдете примеры там.