我创建了一个表单应用程序,其中的图像使用标签
中的icon属性显示jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/replacment.jpg"))); // NOI18N
getContentPane().add(jLabel2);
jLabel2.setBounds(640, 220, 68, 30);
主要思想是当用户按下某个按钮时,图像会像这样消失
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("")));
}
它运行成功,我尝试使用getIcon函数根据标签中显示的图像改变程序代码,例如
if(jLabel2.getIcon()==""){
do something
}
但我得到一个错误说:无法比较的类型Java.swing.icon和Java.lang.string。
那么有没有办法根据Label显示的图标执行if语句?
答案 0 :(得分:2)
如果要删除图标,请使用setIcon(null)
,然后在if语句中检查Icon是否为空:
if (jLabel2.getIcon() == null)
将字符串与图标进行比较是错误的,因为错误说你不能这样做。