스크롤 막대가있는 JPanel에 여러 개의 확인란을 추가하는 대화 상자가 구현되었습니다. 각 프로그램 실행마다 확인란 수가 고정되어 있지는 않지만 대화 상자를 만들기 전에 확인란을 선택합니다. 내가 대화 상자를 추가 할 수있는 체크 박스의 수가 많은 경우Scrollpane보다 큰 JPanel
불행하게도 다음과 같습니다
내 코드는 다음과 같습니다
JPanel listPanel = new JPanel(new GridLayout(files.size() + 2, 1));
for (int i = 0; i < files.size(); i++) {
listPanel.add(files.get(i));
}
listPanel.setPreferredSize(new Dimension(600, 1400));
JScrollPane sp =
new JScrollPane(listPanel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
sp.setPreferredSize(new Dimension(300, 200));
mainPanel.add(sp, BorderLayout.CENTER);
mainPanel.add(buttonPane, BorderLayout.EAST);
getContentPane().setLayout(new FlowLayout());
getContentPane().add(mainPanel);
pack();
setResizable(false);
난 그냥의 크기를 설정하는 방법 프레임에 영향을 미치지 않으면 서 더 큰 크기의 Scrollpane 안의 패널?
을 게시 할 수 있습니다. ScrollPane에 PreferredSize를 사용하지 않으면 모든 항목이 스크롤 막대없이 표시됩니다. 그리고 JPanel에 PreferredSize를 사용하는지 여부는 아무런 차이가 없습니다. 결과는 같습니다. – schmimona
@chchimimona 죄송합니다, 예제 작업;) – MadProgrammer