java - 我想根据点击按钮删除图像图标

标签 java swing imageicon

我想在按钮按下一次时在标签上设置图标,如果按下两次,它将删除我使用的 label.setIcon(null); 但它对我来说效果不佳。

public void actionPerformed(ActionEvent e) {
    if (!"submit".equals(e.getActionCommand()))
    {
       JButton button = (JButton) e.getSource();
       int X = button.getLocation().x;  
       int Y = button.getLocation().y;
       JLabel tick=new JLabel();add(tick);
       tick.setBounds(X+400,Y+15,50,50);           

       if(arr.contains(e.getActionCommand()))
       {            
           tick.setIcon(null);
           arr.remove(e.getActionCommand());
       }          
       else
       {            
           image=new ImageIcon(imageList[0]);
           tick.setIcon(image);
           arr.add(e.getActionCommand());
       }

最佳答案

不要重新创建 JLabel,也不要在每次点击时添加它

   JLabel tick=new JLabel();
   add(tick);

改为创建类字段并创建标签一次。如果它已初始化,则只需 tick.setIcon(null)

关于java - 我想根据点击按钮删除图像图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27011666/

相关文章:

java - Eclipse:代码无法从包中获取导入的图像。从 C:/读取时代码有效

java - org.apache.openjpa.persistence.PersistenceException : null keys not allowed (OpenJPA)

java - 如何为 requestbody 发送自定义验证 Json 对象?

java - GridLayout(3,3,10,10) 仅显示 2 列而不是 3 列

java - 如何在 Netbeans IDE 中连接不同的 swift jpanel?

java - 如何将可滚动的 JTextArea 添加到 jDesktopPane

java - 将 jLabel 上的图标保存为硬盘上的图像

java - 无法在 JFrame 中显示 JPEG 图像

java - 如何将 Java 首选项类与 JRadioButton 一起使用

java - 计算 HashMap/HashTable 的调用次数