Java JPanel对象放置在底部
我有一个简单的类叫BallTask,它让一个球四处移动并从帧的极限反弹。我试图应用按钮,我可以使用停止线程和启动它,但我坚持让按钮面板坚持到底Java JPanel对象放置在底部,java,swing,layout,constructor,Java,Swing,Layout,Constructor,我有一个简单的类叫BallTask,它让一个球四处移动并从帧的极限反弹。我试图应用按钮,我可以使用停止线程和启动它,但我坚持让按钮面板坚持到底 public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { JFrame window = new JFrame(); window.
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame window = new JFrame();
window.setLayout(new BorderLayout());
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setContentPane(new BallTask());
JPanel buttons = new JPanel();
JButton stop = new JButton("Stop");
JButton start = new JButton("Start");
buttons.add(start);
buttons.add(stop);
window.add(buttons,BorderLayout.SOUTH);
window.pack();
window.setVisible(true);
}
});
}
我可以想象这个问题与设置window.setContentPane有关。然而,BallTask只是一个Jpanel,所以我想如果我添加了另一个面板,由于布局的原因,它只会位于它下面。但是,按钮显示在框架顶部。有什么想法吗?您正在制作内容窗格。因此,te
按钮
被添加到任务
。JPanel
(ballstask)有一个默认的FlowLayout
。如果希望ballstask
占据中心和按钮占据南部,只需窗口。添加(new ballstask())
而不是设置内容窗格(new ballstask())
。或者,如果需要底部ballstask
面板上的按钮
,请将ballstask
的布局设置为BorderLayout
。@ppeskillet这是一个显而易见的解决方案。非常感谢。准备好后会打勾