NetBeans를 사용하여 Java에서 Swing 응용 프로그램을 만들고 레이아웃에 문제가 있습니다. 내 메인 프레임에는 이라는 contentPanel
이 포함되어 있으며 JPanel
이라는 listPanel
이 포함 된 JScrollPane
이 포함되어 있습니다. 프로그램이 시작될 때 listPanel
은 비어 있지만 사용자가 프로그램과 상호 작용할 때 예측할 수없는 더 작은 수의 JPanel
이 추가됩니다. NetBeans GUI 빌더를 사용하여 상단 가장자리가 listPanel
이고 상단이 contentPanel
이며 하단 가장자리가 동일합니다.중첩 된 JPanels로 JScrollPane을 올바르게 작동하게하려면 어떻게해야합니까?
문제는 더 많은 구성 요소가 listPanel
에 추가되면 세로 스크롤 막대가 내 스크롤 패널에 나타나지 않는다는 것입니다. 내 스크롤 패널의 verticalScrollBarPolicy
은 AS_NEEDED
으로 설정되고 viewportView
은 contentPanel
으로 설정됩니다. 내가해야 할 일은 더 많은 항목이 listPanel
에 추가 될 때 contentPanel
이 커지도록하는 것입니다.
listPanel이 BoxLayout을 사용하고 있습니다. 그렇다면 contentPanel에서도 사용해야합니다. –
@Viktor, 중첩 된 패널을 가지고 있으므로 각 레벨의 레이아웃을 조정해야 할 필요가 있습니다. contentPanel 레이아웃은 contentPanel 내부의 항목의 레이아웃 및 선호 크기뿐만 아니라 요소가 될 것입니다. – jzd