0

我使用 Netbeans 制作 Java 应用程序。我还是个初学者。我有 4 个按钮,当用户单击其中一个时,我想更改一个图标。我已经放了按钮和一个图标,但我不知道如何继续。

4

3 回答 3

1

您将需要一个ActionListener更改图标的图标(为此使用 ImageIcon)。将该 ActionListener 添加到应该使用该操作响应单击的 Button。

button.addActionListener(/*here your listener*/);
于 2013-10-29T17:18:58.313 回答
0

你用的是netbeans的windowbuilder吗?如果是,请检查为您指定的按钮生成的代码,看看他们是如何做到的 :)

于 2013-10-29T17:29:36.797 回答
0

好的,我为我的包创建了一个名为 TestFrame 的新 JFrame 表单。

public class TestFrame extends javax.swing.JFrame {

        static public ImageIcon imageCross; 
        static public ImageIcon imageCircle;


        URL cross = TestFrame.class.getResource("cross.jpg");
        URL circle = TestFrame.class.getResource("circle.jpg");

        boolean clicked = true;
    /**
     * Creates new form TestFrame
     */
    public TestFrame() {
        imageCross = new javax.swing.ImageIcon(cross);
        imageCircle = new javax.swing.ImageIcon(circle);
        initComponents();
    }
    ...

这就是我声明我的图像的方式。

现在我需要在单击按钮时更改它们。

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    if(clicked) {
        jButton1.setIcon(imageCircle);
        clicked = false;
    } else {
        jButton1.setIcon(imageCross);
        clicked = true;
    }

} 

只需添加您需要的所有图像。为每个 JButton 添加一个 actionPerformed() 并使用 if 条件或 switch/case 切换您的图标(如果您有更多)。

于 2013-10-30T16:29:43.273 回答