gpt4 book ai didi

java - 图像未显示在 JPanel 上

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:03:44 27 4
gpt4 key购买 nike

 class Deal implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
dl.setDeck();
dl.shuffle();
dl.firstDraw(pl);

for(Card c:pl.showHand())
panelplay.add(new JLabel(c.getImageIcon()));

panelplay.validate();
}
}

这是 Jbutton 的事件处理程序。方法 pl.showHand() 返回用户定义类“Card”的 ArrayList。在循环内插入 println() 显示打印,因此代码正在执行,但面板 panelplay 不显示卡片图像。

最佳答案

面板上现有的标签怎么样?你不删除它们。我猜您正在使用 FlowLayout 并且标签只是添加到面板的末尾,因此您看不到它们。

因此,一种解决方案是在将标签添加回面板之前使用 panel.removeAll()。然后我使用:

panel.revalidate();
panel.repaint();

或者如前所述,更好的选择是不替换标签,而只是使用 setIcon() 方法替换图标。

关于java - 图像未显示在 JPanel 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3064320/

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