java gui setbounds不起作用

时间:2014-09-25 08:02:48

标签: java user-interface setbounds

我正在尝试在java中创建一个用户界面,我是新手,所以很抱歉,如果这是一个简单的问题。

public class viewDeneme extends JFrame {

private static final long serialVersionUID = -7284396337557548747L;
private JTextField nameTxt = new JTextField(10);
private JTextField passwordTxt = new JTextField(10);
private JButton loginBtn = new JButton("Giriş");
private JLabel nameLbl = new JLabel("Kullanıcı adi:");
private JLabel passwordLbl = new JLabel("Şifre:");

public viewDeneme(){
    JPanel loginPanel = new JPanel();
    this.setSize(600,200);
    this.setLocation(600, 300);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    nameLbl.setBounds(200, 200, 100, 50);

    loginPanel.add(nameTxt);
    loginPanel.add(passwordTxt);
    loginPanel.add(loginBtn);
    loginPanel.add(nameLbl);
    loginPanel.add(passwordLbl);

    this.setVisible(true);
    this.add(loginPanel);
}

public static void main(String[] args) {
    new viewDeneme();

}
}

这是我的代码。我正在尝试为标签和文本框设置界限,但它没有改变任何东西。没有任何错误,所以我必须遗漏一些但我无法找到它在网上搜索。感谢您的帮助

1 个答案:

答案 0 :(得分:0)

请参阅What is setBounds and how do I use it?

JPanel布局必须为null才能使用绝对定位。 JPanel对象初始化为使用FlowLayout,除非您在创建JPanel时指定不同。所以你必须写

loginPanel.setLayout(null);