gpt4 book ai didi

Java setBounds 不适用于 JPanel

转载 作者:行者123 更新时间:2023-12-01 16:28:14 25 4
gpt4 key购买 nike

我正在用java做一个小Gui。我正在使用 setBounds 方法在我的 JFrame 上设置按钮等的位置,但问题是,当我将它与 JPanel 一起使用时,按钮在 JFrame 上不可见,而没有 JPanel 则完全可以,请查看这两个代码,请帮助我我是初学者,面临着这些愚蠢的问题。

这个工作正常

  JFrame jframe = new JFrame("Working Fine");  
jframe.setLayout(null);
JButton jbutton = new JButton("Position Test");
jbutton.setBounds(0, 0, 100, 100);
jframe.add(jbutton);
jframe.setSize(300,300);
jframe.setVisible(true);

当我将 Button 添加到 Jpanel 时,相同的代码然后它不起作用,所以出了什么问题,请指导我

  JFrame jframe = new JFrame("causing problem ");
jframe.setSize(300,300);
JPanel p = new JPanel();
jframe.setLayout(null);
JButton jbutton = new JButton("Position Test");
jbutton.setBounds(0, 0, 100, 100);
jframe.add(p);
p.add(jbutton);
p.setVisible(true);
//jframe.add(jbutton);
jframe.setVisible(true);

请帮我解决这个小问题

最佳答案

您必须摆脱 JPanel 的布局,才能设置绝对位置:

p.setLayout(null);

关于Java setBounds 不适用于 JPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62120985/

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