#java #image #swing #jframe #add
#java #изображение #качать #jframe #Добавить
Вопрос:
Я добавил a JLabel
в a, JFrame
и добавлено одно изображение размером 1024×768 JLabel
.
Когда я устанавливаю разрешение экрана окна в 1024×768 и запускаю приложение, изображение отображается во всем окне. Но когда я устанавливаю разрешение экрана окна в 1280х768 — изображение отображается только в одной третьей части окна.
Как я могу настроить или добавить изображение размером 1024×768, чтобы при любом разрешении экрана изображение отображалось во все окно? Другими словами, изображение настраивается в соответствии с разрешением экрана окна.
Ответ №1:
import java.awt.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.net.URL;
import javax.imageio.ImageIO;
class ImagePanel extends JPanel {
Image image;
ImagePanel(Image image) {
this.image = image;
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image,0,0,getWidth(),getHeight(),this);
}
public static void main(String[] args) throws Exception {
URL url = new URL("http://pscode.org/media/stromlo2.jpg");
final Image image = ImageIO.read(url);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame f = new JFrame("Image");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocationByPlatform(true);
ImagePanel imagePanel = new ImagePanel(image);
imagePanel.setLayout(new GridLayout(5,10,10,10));
imagePanel.setBorder(new EmptyBorder(20,20,20,20));
for (int ii=1; ii<51; ii ) {
imagePanel.add(new JButton("" ii));
}
f.setContentPane(imagePanel);
f.pack();
f.setVisible(true);
}
});
}
}
Используется необработанное изображение
Ответ №2:
Я несколько раз сталкивался с этой проблемой, когда добавлял изображение в JFrame
. Либо размер изображения будет небольшим, либо JFrame
размер будет небольшим.
Вот отличный сайт, на котором вы можете изменять размер своих изображений в соответствии с JFrame
без искажения изображения.
Вы можете посетить этот веб-сайт, перейдя на сайт
Я объяснил и показал, как использовать фоторедактор, который предоставляет веб-сайт, для изменения размера изображения.
Перейдите к моему видеоуроку Перейдите к Видеосессии