다른 이유로 인해 패널을 세로로 가운데에 배치하는 데 문제가 있습니다. 나는 공부 한 예와 똑같지 만 여전히 운이 없다.자바 센터링 패널
내 코드가 있습니다. 내 컨테이너 패널에서 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");
대단히 고맙습니다. GridBagLayout을 사용하여 제 문제를 해결했습니다. 비록 내가 아직도 setAlignmentX와 setAlignment가해야 할 것을 알아낼 수는 없었지만. – harbinger