Я хочу отобразить варианты одного и того же изображения в одном и том же JFrame, например, отобразить изображение в JFrame, а затем заменить его на серый масштаб того же изображения.
Как я могу отобразить BufferedImage в JFrame?
Ответ 1
При обновлении изображения вам придется перекрасить JFrame
.
Вот то, что вызывает простой google по теме: (Я использую эти обучающие программы для всего моего 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 и добавляете метку в графический интерфейс, как и любой другой компонент.
Если вы задаетесь вопросом о том, как создать шкалу серого, я предлагаю вам искать в Интернете эти термины в качестве ключевых слов поиска, я уверен, что вы найдете примеры там.