gpt4 book ai didi

java - 在 Action 监听器内的 jpanel 中添加图像

转载 作者:行者123 更新时间:2023-12-02 07:04:17 28 4
gpt4 key购买 nike

女士们先生们,大家好,我再次无法弄清楚对你来说可能很简单的事情。我正在尝试加载 3 个图像 space.jpeg、treefrog.jpeg 和 yosemite.jpeg (当您单击显示相应图像的单选按钮时),并尝试调整我能找到的每个示例。如果有人愿意为我指明正确的方向,我将不胜感激。

package guiprogramming;
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;

public class ChooseImage extends JPanel {
private JPanel panel1;
private SimplePanel drawingPanel;
JRadioButton button1, button2, button3;

public ChooseImage() {
setLayout(new BorderLayout());
panel1 = new JPanel();
drawingPanel = new SimplePanel();
button1 = new JRadioButton("Scenery");
panel1.add(button1);
button2 = new JRadioButton("Space");
panel1.add(button2);
button3 = new JRadioButton("Tree Frog");
panel1.add(button3);

ButtonGroup group = new ButtonGroup();
group.add(button1);
group.add(button2);
group.add(button2);

this.add(panel1, BorderLayout.NORTH);
this.add(drawingPanel, BorderLayout.CENTER);


button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//This is where I am trying to get the images to load
}});

button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//This is where I am trying to get the images to load
}});

button3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//This is where I am trying to get the images to load
}});








}

public static void main(String[] args) {
JFrame window = new JFrame("Choose Image");
ChooseImage panel = new ChooseImage();
window.setContentPane(panel);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setSize(500, 500);
window.setVisible(true);
}
}

最佳答案

  1. 不要在每次调用 ActionListener 时加载图像。
  2. 在程序启动时加载图像。
  3. 使用ImageIO.read(...)读取图像。您可以找到ImageIO API here .
  4. 将图像放入 ImageIcons。
  5. 在 ActionListener 中,通过其 setIcon(...) 方法交换 JLabel 的图标。
  6. 在实现复杂功能时,请分步单独进行。换句话说,首先创建一个显示图像的小程序,只有当成功后才能创建一个在按下按钮时进行交换的程序。
  7. 将来,请向我们展示您实现功能的尝试。这样做可以让我们更好地了解您的误解或问题。

关于java - 在 Action 监听器内的 jpanel 中添加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16290018/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com