Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.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样式-间距_Java_Swing_Layout Manager_Styling - Fatal编程技术网

Java样式-间距

Java样式-间距,java,swing,layout-manager,styling,Java,Swing,Layout Manager,Styling,所以我第一次学习Java,是时候尝试我的第一个项目了。我被困在了“第一关”哈哈 我遇到的问题是,我实际上不知道如何将J项隔开 我有一个用于登录表单的250350窗口,其中JLabel,用户名为JTextField,密码为JLabel,底部为JButton 我现在要做的是设置它的样式,以便窗体顶部和底部之间的间距使窗体居中,并在JLabel和JTextField之间添加一行高度空间。(基本上是\n类型的交易,但不起作用。) 希望这是有意义的,如果没有,我道歉,我会尝试重新措辞/添加代码 publi

所以我第一次学习Java,是时候尝试我的第一个项目了。我被困在了“第一关”哈哈

我遇到的问题是,我实际上不知道如何将J项隔开

我有一个用于登录表单的
250350
窗口,其中
JLabel
,用户名为
JTextField
,密码为
JLabel
,底部为
JButton

我现在要做的是设置它的样式,以便窗体顶部和底部之间的间距使窗体居中,并在
JLabel
JTextField
之间添加一行高度空间。(基本上是\n类型的交易,但不起作用。)

希望这是有意义的,如果没有,我道歉,我会尝试重新措辞/添加代码

public Game() {
    this.setSize(250,350);
    this.setLocationRelativeTo(null);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setTitle("Sticket Cricket - Login");

    JPanel loginMenuPanel = new JPanel();

    loginButton = new JButton("Login");

    usernameField = new JTextField();
    usernameField.setColumns(10);

    passwordField = new JPasswordField();
    passwordField.setColumns(10);
    passwordField.requestFocus();

    usernameLabel = new JLabel("Username: ");

    passwordLabel = new JLabel("Password: ");

    this.add(loginMenuPanel);

    loginMenuPanel.add(usernameLabel);
    loginMenuPanel.add(usernameField);
    loginMenuPanel.add(passwordLabel);
    loginMenuPanel.add(passwordField);
    loginMenuPanel.add(loginButton);

    this.setVisible(true);
}
简短答复:

创建一个JPanel,设置面板的layoutmanger(一些示例,请查看更多示例)

然后相应地将组件添加到此面板

对于您正在寻找的布局,使用IDE来创建它可能更容易,我发现NetBean是最容易做到这一点的

我的建议是创建一个网格布局为2列2行的JPanel,在其中添加登录名和密码的JLabel和文本字段


然后创建另一个JPanel(可能是BorderLayout或Flow Layout)并将上面的面板添加到其中,然后将此父面板添加到框架中。

1)Java GUI可能必须在多个平台上工作,使用不同的屏幕分辨率和不同的PLAF。因此,它们不利于部件的精确放置。要为健壮的GUI组织组件,请使用布局管理器或它们的组合,以及空白的布局填充和边框。2) 为了更快地获得更好的帮助,请发布您当前尝试的详细信息。3) “如果不是的话,希望这是有意义的.”.最小尺寸和扩展后的GUI的ASCII艺术。您需要看看布局管理器,Java内置了许多布局管理器(请参阅)。我通常使用外部布局管理器(表布局-)。最近还有一些布局管理器,比如mig layout
public Game(){..
为了更快地获得更好的帮助,请发布一个而不是不可编译的代码片段。