java - 将 JButton 作为图像放置在专用位置
问题描述
我正在尝试将具有 Image 表单的 JButton 放置到 JFrame 上的所需位置,但是当我为这个特定按钮定义方法 setBounds 时,它没有按预期工作,并且按钮仍然在同一个位置。下面的代码:
public
class GameFrame {
JButton atB = new JButton();
JButton beB = new JButton();
JButton bgB = new JButton();
JButton czB = new JButton();
JButton deB = new JButton();
JButton dkB = new JButton();
JButton esB = new JButton();
JButton plB = new JButton();
JButton roB = new JButton();
JButton ruB = new JButton();
public GameFrame(){
generateGameFrame();
}
public void generateGameFrame() {
JPanel gamePanel;
Countries countries = new Countries();
JFrame gameFrame = new JFrame("Koronawirus AntiPlague - Game");
try {
gameFrame.setIconImage(ImageIO.read(GameFrame.class.getResourceAsStream("/resources/images/Icon.png")));
} catch (IOException ex) {
ex.printStackTrace();
}
gamePanel = new JPanel() {
public void paintComponent(Graphics g) {
Image img = Toolkit.getDefaultToolkit().getImage(
MenuFrame.class.getResource("/resources/images/map.png"));
g.drawImage(img, 0, 0, this.getWidth(), this.getHeight(), this);
}
};
gameFrame.setContentPane(gamePanel);
gameFrame.setSize(700, 700);
gameFrame.setVisible(true);
gameFrame.setResizable(false);
gameFrame.setLocationRelativeTo(null);
gameFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
loadImageAsButtonAndDesign();
gamePanel.add(atB);
}
public void loadImageAsButtonAndDesign()
{
try {
Image img = ImageIO.read(getClass().getResource("/resources/images/at.png"));
atB.setIcon(new ImageIcon(img));
} catch (Exception ex) {
System.out.println(ex);
}
atB.setBorderPainted(false);
atB.setOpaque(false);
atB.setBackground(Color.DARK_GRAY.darker());
atB.setBounds(100,100,20,15);
}
}
正如您在上面看到的,我正在尝试 setBounds 但没有成功。我也在尝试:
atB.setLayout(null);
解决方案
推荐阅读
- java - Java - 关于性能和内存使用,为什么最好在静态字段中使用字符串而不是每次需要时都声明它?
- python - Pytest + ModuleNotFoundError:没有名为“project_name.settings”的模块
- python - 如何在 HP unix 中安装所需版本的 pandas 库?
- python - 分组后如何从seaborn swarmplot和各自的箱线图中排列点
- sqlite - SQLite 只返回重复的行
- apache-spark - 如何在 Spark SQL 中完成高度倾斜的联接?
- spring-boot - 如何配置 Zuul 网关(监听两个端口)根据端口和 url 组合拒绝请求?
- php - Heroku:已安装 FFMpeg,但 php 工作人员找不到它
- c++ - 将类方法设置为 OpenSSL 回调
- c# - 验证数字签名