gpt4 book ai didi

java - 刷新 JLabel - Java

转载 作者:行者123 更新时间:2023-12-01 16:46:07 25 4
gpt4 key购买 nike

我在使用 JLabels 和 Frames 时遇到一些问题..

我有以下代码:

 list.addListSelectionListener(
new ListSelectionListener() {

@Override
public void valueChanged(ListSelectionEvent e) {
//System.out.println(e.getFirstIndex());


String selectedFile = list.getSelectedValue().toString();
System.out.println("Selected file " + selectedFile);
JLabel label;
ImageIcon icon = new ImageIcon("C:\\Users\\danie\\Pictures\\" + selectedFile);
// frame.setSize(1047, 680);
label = new JLabel(icon);
//label.setSize(100,100);
frame.getContentPane().add(label, BorderLayout.CENTER);
frame.revalidate();
frame.repaint();

}

});

如果选择了 JList 中的项目,我想刷新 borderlayout 中心的标签。但使用此代码,旧图像将进一步显示,而新图像仅绘制在现有图像的后面。

有人可以帮助我吗? :)

最佳答案

首先,您将创建一个新的 JLabel 实例,而不是处理现有的实例。你真正想做的是:

labe.setIcon(icon);

这将自动刷新元素。

关于java - 刷新 JLabel - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50307121/

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