gpt4 book ai didi

java - 将对象添加到 Jpanel

转载 作者:行者123 更新时间:2023-12-01 23:09:55 25 4
gpt4 key购买 nike

我知道如何将 JButton 添加到 JPanel,但是我制作的类怎么样?

我有这门课:

public class Monster
{
private ImageIcon monster;
private JButton b;

public Monster()
{
monster = new ImageIcon("Monster.jpg");
b = new JButton(monster);
b.setIcon(monster);
}
}

我有另一个类(class),在该类(class)中我想将图标添加到我的 Swing 窗口。

import javax.swing.*;
import java.awt.*;
public class GameWindow
{
private JFrame frame;
private JPanel panel;
private Monster monster;

public GameWindow()
{
frame = new JFrame();
panel = new JPanel();
monster = new Monster();

panel.add(monster);

frame.setContentPane(panel);
frame.setTitle("Game");
frame.setSize(400,400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}

panal.add() 方法适用于 JButton,但不适用于我的 Monster 类。如何将 Monster 对象添加到我在 GameWindow 类中创建的 Swing 窗口?

最佳答案

您应该使用 Swing 组件。扩展 Swing 组件(或任何其他 Java 类)的唯一原因是您想要重写其中一个类方法。

您的 Monster 类中缺少一个方法。

public class Monster
{
private ImageIcon monster;
private JButton b;

public Monster()
{
monster = new ImageIcon("Monster.jpg");
b = new JButton(monster);
b.setIcon(monster);
}

public JButton getMonsterButton() {
return b;
}
}

GameWindow 类中的添加行如下所示:

    panel.add(monster.getMonsterButton());

关于java - 将对象添加到 Jpanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22183086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com