2014-04-21 3 views
1

두 개의 JPanel을 하나의 JFrame에 추가하는 GUI를 만들려고하지만 두 번째 JPanel을 추가하면 첫 번째 UI가 우선 적용됩니다. 첫 번째 JPanel에는 스도쿠 박스가 있고 두 번째에는 버튼이 필요합니다. 하지만, 내가 추가 한 첫 번째 것이 항상 두 번째를 무시하기 때문에, 이것은 작동하지 않습니다.하나의 JFrame에 두 개의 JPanel - 첫 번째 프레임을 두 번째 오버라이드합니다.

내 스도쿠 JPanel은 GridLayout을 사용하며 이것만으로 완벽하게 작동합니다. 문제는 두 번째 JPanel (JButton이 있음)을 추가하려고 할 때입니다. 버튼은 스도쿠 상자의 사각형보다 크기가 커야하므로이 버튼을 첫 번째 JPanel에 추가 할 수 없습니다.

2 개의 JPanel을 사용하여이를 해결할 수 있습니까? 아니면 다른 레이아웃이 필요합니까? GridBagLayout에 대한 내용을 읽고 해결책이 될 수 있다고 생각하지만, 스도쿠가있는 JPanel의 전체 코드를 변경하는 것은 지루한 일입니다.

답변

1

적절한 레이아웃 관리자로 다른 JPanel을 만들고 그 안에 두 개의 작은 패널을 추가 할 수 있습니다. 패널 내부에 패널을 두는 것은 크기를 조정하는 등의 작업을보다 잘 제어하면서 레이아웃을 덜 복잡한 조각으로 나눌 수있는 좋은 방법입니다.

+0

이제는 두 번째 패널이 첫 번째 패널의 오른쪽에 있습니다. 나는 첫 번째를 중심으로 설정하려고 시도했으나 두 번째는 남쪽으로 (테두리 배치) 설정했지만 작동하지 않았습니다. 나는 어떻게 서로 아래에 dem를 얻습니까? – user2795095

+0

국경 배치를하고 있기 때문에 북쪽으로 설정하고 해저에 설정을 해봤습니까? 최상위 패널 (1 열 x 2 행)에 대한 격자 레이아웃을 사용하는 것이 더 나을 수도 있습니다. – Dmitri

+0

BoxLayout이 완벽하게 작동했습니다. 도움을 제공해 주셔서 감사합니다. :) – user2795095