我试图在秋千中实现播放/暂停按钮。
我这样启动JLabel:

PlayLabel = new JLabel(new ImageIcon(playPNG));
PlayLabel.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent arg0) {
                PlayLabel.setIcon(new ImageIcon(pausePNG));
            }
        });


所以这很好用。单击PlayLabel后,imageSource更改。
但是在我的暂停方法中,这将无法工作:

private void doPause()
    {
        System.out.println("PAUSED");
        player.pauseCurrentTrack();
        PlayLabel.setIcon(new ImageIcon(playPNG));
    }


此JLabel不会将其ImageIcon变回playPNG

最佳答案

JToggleButton在此上下文中可能更合适。 setIcon()方法应该按照您的建议工作。作为参考,此example从不断变化的List<JToggleButton>更新List<Icon>中的每个按钮。它可以提供一些见识或为您sscce提供基础。

10-04 11:02