出于某种原因,我在将位于另一个面板内的面板垂直居中时遇到问题。我完全按照我研究的例子做,但仍然没有运气。
下面是我的代码。尽管在我的容器面板上使用了 setAlignmentY(0.5f),但当我调整窗口大小时它仍然不会居中。
尽管 setAligenmentX(0.5f),容器面板内的组件也不会居中。
我想知道是否有解决方案,我几乎尝试了所有方法,但找不到解决方案。
JLabel idLabel;
JLabel passLabel;
JTextField id;
JTextField pass;
JButton enter;
JPanel container;
public JournalLogin()
{
//setLayout(new FlowLayout());
//setPreferredSize(new Dimension(500, 500));
//setBorder(BorderFactory.createEmptyBorder(100, 100, 100, 100));
container = new JPanel();
container.setLayout(new MigLayout());
container.setAlignmentX(0.5f);
container.setAlignmentY(0.5f);
container.setPreferredSize(new Dimension(300, 300));
container.setBorder(BorderFactory.createTitledBorder("Login"));
add(container);
idLabel = new JLabel("ID:");
idLabel.setAlignmentX(0.5f);
container.add(idLabel);
id = new JTextField();
id.setText("id");
id.setAlignmentX(0.5f);
id.setPreferredSize(new Dimension(80, 20));
container.add(id, "wrap");