как использовать функцию getIcon?(Java / Net Beans IDE) - PullRequest
0 голосов
/ 27 февраля 2012

Я создал приложение формы с изображением, которое отображается с помощью свойства значка в метке

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.

так есть ли способ сделать оператор if в зависимости от значка, отображаемого на ярлыке?

1 Ответ

3 голосов
/ 27 февраля 2012

Если вы хотите удалить значок, используйте setIcon(null), а затем в своем операторе if проверьте, является ли значок нулевым:

if (jLabel2.getIcon() == null)

Сравнение строки со значком неверно, так как ошибка говорит, что вы просто можете 'сделать это.

...