【发布时间】:2018-01-14 20:58:32
【问题描述】:
所以,我想根据 java Swing 中滚动列表的当前选择来绘制图像。似乎最好的方法是向面板添加标签。我尝试了多种不同的方法来做到这一点,对于我的生活,我无法弄清楚为什么它不会显示图像。这是我到目前为止所做的工作的一个简单介绍。
private void jList1MouseClicked(java.awt.event.MouseEvent evt) {
ImageIcon greenDragon = new ImageIcon("C:\\Users\\Ilmari\\Documents\\NetBeansProjects\\GUI harkkatyö\\src\\Ile\\Green_dragon.png");
JLabel dragon = new JLabel();
dragon.setIcon(greenDragon);
String selectedMonster = jList1.getSelectedValue();
if(selectedMonster.equals("Green Dragon")){
jPanel1.add(dragon);
}
else if(selectedMonster.equals("Black Demon")){
}
}
到目前为止,最好的结果是完全覆盖背景 JLabel 图像,并且只显示一个带有图像的白框。
【问题讨论】:
-
你的重绘方法在哪里?那就是应该显示图像的地方
-
我实际上没有,我需要调用类似 JPanel.repaint();每次我修改图像?
-
如果您使用 JPanel 进行编程,您应该定义一个自己编写的重绘方法
标签: java image swing user-interface