2012-10-05 6 views
2

의 크기를 가진 어플리케이션을 만들려고합니다. JFrame의 크기로 자동 조절됩니다 (프레임 내용 창에서 BorderLayout을 레이아웃 관리자로 사용하는 쉬운 부분입니다). 어려운 부분은 JLayeredPane의 콘텐츠가 JLayeredPane (따라서 JFrame도 포함)으로 자동으로 크기 조정되기를 원한다는 사실입니다.JLayeredPane의 자동 컨텐츠 크기 조정

사실 내가 달성하고자하는 기능은 Netbeans의 도킹 콘솔과 매우 흡사합니다. 클릭하면 편집기의 "맨 위에"오고, 닫으면 다시 숨겨져 "콘솔"단어가 도킹됩니다. 상태 표시 줄 분명히 올바르게 동작하도록 크기 조정 동작을 원합니다. 이것을 달성하는 가장 좋은 방법은 무엇입니까 (JLayeredPane이 아닌 경우)?

+0

웃기는 점은 NetBeans입니다. 옵션이 있으면 NetBeans API 위에 응용 프로그램을 빌드하여 이러한 기능을 사용할 수 있습니다. – Foumpie

답변

7

JLayeredPane에 추가 된 ComponentListener를 사용하고 내용이 void componentResized(ComponentEvent e) 메소드에 응답해야합니다.

+0

콘텐츠 크기가 동적으로 조정되지 않지만 (크기 조정 중) 마우스를 놓을 때만 콘텐츠를 의미합니까? – Warkst

+1

아니요, 아니요, 콘텐츠가 /에 말할 때 및 그 후에 만 ​​'componentResized (...)'가 호출 될 때 콘텐츠가 다시 조정된다는 의미입니다. 그것을 테스트하십시오. –

+0

@Warkst 그건'JLayered' 패널의 핵심입니다. 구성 요소에게 무엇을해야하는지 알려주는 레이아웃 관리자가 없습니다 ... – MadProgrammer