Как сделать размер картинки равным рамке? - Java
Формулировка задачи:
Не могу понять как задать размер картинки и сделать чтобы при нажатии они не накладывались друг на друга, а меняли друг друга.
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
class PAnel {
public static void createGUI() {
JButton westButton = new JButton("Доброе утро");
JButton eastButton = new JButton("Добрый день");
final JButton southButton = new JButton("Доброй ночи");
JButton northButton = new JButton("Добрый вечер");
final JFrame frame = new JFrame("Test frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.add(northButton, BorderLayout.CENTER);
panel.add(southButton, BorderLayout.SOUTH);
panel.add(eastButton, BorderLayout.EAST);
panel.add(westButton, BorderLayout.WEST);
frame.getContentPane().add(panel,BorderLayout.SOUTH);
frame.setPreferredSize(new Dimension(550, 300));
frame.pack();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
southButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JLabel jLabel2 = new JLabel();
ImageIcon imageIcon = new ImageIcon(jLabel2.getClass().getResource("/second.jpg"));
jLabel2.setLayout(new BorderLayout());
frame.add(jLabel2,BorderLayout.NORTH);
jLabel2.setIcon(imageIcon);
jLabel2.setText("Lab1");
}
});
northButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JLabel jLabel3 = new JLabel();
ImageIcon imageIcon = new ImageIcon(jLabel3.getClass().getResource("/2.jpg"));
jLabel3.setLayout(new BorderLayout());
frame.add(jLabel3,BorderLayout.NORTH);
jLabel3.setIcon(imageIcon);
jLabel3.setText("Lab2");
}
});
}
}Решение задачи: «Как сделать размер картинки равным рамке?»
textual
Листинг программы
southButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
ImageIcon imageIcon = new ImageIcon(jLabel2.getClass().getResource("/2.jpg"));
jLabel2.setLayout(new BorderLayout());
frame.add(jLabel2,BorderLayout.NORTH);
jLabel2.setIcon(imageIcon);
jLabel2.setText("Lab1");
}
});
northButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ImageIcon imageIcon = new ImageIcon(jLabel2.getClass().getResource("/second.jpg"));
jLabel2.setLayout(new BorderLayout());
frame.add(jLabel2,BorderLayout.NORTH);
jLabel2.setIcon(imageIcon);
jLabel2.setText("Lab2");
}
});