我是图形用户界面的初学者,我正在开发一个游戏项目。写作GameMenu的I类是一个JComponent,它的目的是在我的游戏中我将制作一个GameMenu对象,它将处理游戏的加载,只是一个视觉表示。但是,我没有使用布局管理器,而是决定使用绝对定位进行GameMenu加载,其中我有一个ProgressBar和一个Frame。我将Frame的大小设置为500乘500,ProgressBar也是500乘500的维度,我认为结果是Frame和ProgressBar应该是相同的大小,但是当我运行时代码ProgressBar看起来比我的Frame稍大。因此,我必须调整Frame的大小才能看到整个ProgressBar。我不知道我的代码是错误的,还是说如果你自己定位,ProgressBar的大小似乎有点大。如何在不调整大小的情况下将Frame和ProgressBar设置为相同的大小?
public class GameMenu extends JComponent
{
private JProgressBar loadbar;
private JFrame gui;
public GameMenu()
{
loadbar=new JProgressBar();
gui=new JFrame();
}
public void init()
{
gui.setLayout(null);
loadbar.setStringPainted(true);
gui.setBounds(0,0,500,500);
loadbar.setBounds(0,0,500,500);
loadbar.setVisible(true);
gui.getContentPane().add(loadbar);
gui.setVisible(true);
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gui.setLocationRelativeTo(null);
for(int i=0;i<=100;i++)
{
loadbar.setValue(i);
try
{
Thread.sleep(15);
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}