Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何更改JButton的位置和大小?_Java_Swing_Jpanel_Jbutton_Layout Manager - Fatal编程技术网

Java 如何更改JButton的位置和大小?

Java 如何更改JButton的位置和大小?,java,swing,jpanel,jbutton,layout-manager,Java,Swing,Jpanel,Jbutton,Layout Manager,我正在处理一个游戏的菜单,我在菜单面板上实现了三个JButtons,但是,我不能更改JButtons的大小或位置。我尝试了setBounds函数,但没有任何结果。有人能帮我吗 public class MenuPanel extends JPanel implements ActionListener { private JButton playKnop, highScoreKnop, quitKnop; private MijnProject mainVenster;

我正在处理一个游戏的菜单,我在菜单面板上实现了三个JButtons,但是,我不能更改JButtons的大小或位置。我尝试了setBounds函数,但没有任何结果。有人能帮我吗


public class MenuPanel extends JPanel implements ActionListener
{
    private JButton playKnop, highScoreKnop, quitKnop;
    private MijnProject mainVenster;

    public MenuPanel(MijnProject mainVenster) 
    {
        this.mainVenster = mainVenster;
        playKnop = new JButton("Play");     
        playKnop.addActionListener(this);
        playKnop.setBounds(200, 200, 20, 20);

        quitKnop = new JButton("Quit");
        quitKnop.addActionListener(this);

        highScoreKnop = new JButton("High Scores");
        highScoreKnop.addActionListener(this);

        this.add(playKnop);
        this.add(quitKnop);
        this.add(highScoreKnop);

    }

您可以使用
setSize(int-width,int-height)
方法。例如,如果您希望quitKnop按钮有一个100px宽、20px高的按钮,您可以写一行

quitnop.setSize(100,20)


至于位置,您应该看看布局管理器,正如@Code学徒在您问题下方的评论中首先提到的。它们将允许您组织您的按钮。你应该使用边距来增加空间。如果您希望按钮转到特定点,可以使用
设置位置(int x,int y)
方法,但我不建议在这种情况下使用该方法。

您可以使用
设置大小(int width,int height)
方法。例如,如果您希望quitKnop按钮有一个100px宽、20px高的按钮,您可以写一行

quitnop.setSize(100,20)


至于位置,您应该看看布局管理器,正如@Code学徒在您问题下方的评论中首先提到的。它们将允许您组织您的按钮。你应该使用边距来增加空间。如果您希望按钮转到特定点,可以使用
setLocation(int x,int y)
方法,但我不建议您在这种情况下使用该方法。

我建议您了解。我建议您了解。“您可以使用
setSize(int width,int height)
方法。”而不是为了实现问题中提出的要求。布局管理器将使用首选的大小而不是大小,甚至会根据布局管理器的性质或添加时使用的约束调整一些值。一个很好的例子是
BorderLayout
CENTER
组件将获得所有额外空间&其中的组件将在宽度和高度上拉伸以完全填充。
页面的开始/结束
获得了它们的首选高度,但R被拉伸到了宽度<代码>行\u开始/结束
在高度上被拉伸,但获得优先宽度。“您可以使用
setSize(int-width,int-height)
方法。”而不是实现问题中提出的要求。布局管理器将使用首选的大小而不是大小,甚至会根据布局管理器的性质或添加时使用的约束调整一些值。一个很好的例子是
BorderLayout
CENTER
组件将获得所有额外空间&其中的组件将在宽度和高度上拉伸以完全填充。
页面的开始/结束
获得了它们的首选高度,但R被拉伸到了宽度<代码>行开始/结束
在高度上被拉伸,但获得优先宽度。