你好我有一个Jpanel,当没有图像时,会出现一个显示“找不到图像”的图像。
我还用其他语言用其他语言创建了其他图像,问题是当我点击按钮更改语言时,标签会发生变化,但是图像没有。
我怎么能做到?
我已经尝试过重绘,重新验证以及所有这些,但没有任何效果。
PD:如果我回到上一个窗口并且我在那里更改语言,当我转到我遇到问题的面板时图像是正确的,所以问题不在于图片不是变化
解决方案:我发现错误,问题是更改图像的代码片段在异常内部,在另一个事件内部,并且因为该方法不再执行主要方法它不起作用非常感谢所有人。
感谢。
答案 0 :(得分:0)
如果jframe.repaint();
无法单独使用,请使用:
jframe.invalidate();
jframe.validate();
jframe.repaint();
如果这不起作用,您可以强制它:
SwingUtilities.updateComponentTreeUI(JFrame的);
更新
正如@MadProgrammer所说:如果这样做是在掩盖布局中更大的问题
答案 1 :(得分:0)
框架已经是一个可见的容器,你的jpanel是你框架的一部分,所以如果你想更新面板并且代码在框架内,那么按照相同的顺序使用以下代码 -
frame.getContentPane().validate();
frame.getContentPane().repaint();
如果重新绘制代码在面板中,只需调用validate()
,然后调用repaint()
。它应该适合你。
欢呼声
答案 2 :(得分:0)
解决方案:我发现错误,问题是更改图像的代码片段在异常内部,在另一个事件内部,并且因为该方法不再执行主要方法它不起作用非常感谢所有人。