Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 스크롤 가능한 JPanel을 어떻게 구현할 수 있습니까?

<시간/>

JPanel

  • JPanel JComponent 의 하위 클래스입니다. (컨테이너의 하위 클래스 수업). 따라서 JPanel 컨테이너이기도 합니다. .
  • JPanel 다른 패널을 포함한 다른 구성 요소를 배치하는 데 사용할 수 있는 빈 영역입니다.
  • JPanel에서 , 필드, 레이블, 버튼, 확인란, 을 추가할 수 있습니다. 및 이미지 또한.
  • FlowLayout과 같은 레이아웃 관리자 , 그리드 레이아웃 , 테두리 레이아웃 및 기타 레이아웃 관리자는 JPanel을 사용하여 구성요소의 크기, 위치 및 정렬을 제어하는 ​​데 도움이 됩니다. .
  • JPanel 클래스의 중요한 메소드는 getAccessibleContext(), getUI(), updateUI() paramString() .
  • JPanel도 구현할 수 있습니다. 세로가로 JScrollPane에 패널 개체를 추가하여 스크롤합니다.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JScrollablePanelTest extends JFrame {
   public JScrollablePanelTest() {
      setTitle("JScrollablePanel Test");
      setLayout(new BorderLayout());
      JPanel panel = createPanel();
      add(BorderLayout.CENTER, new JScrollPane(panel));
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static JPanel createPanel() {
      JPanel panel = new JPanel();
      panel.setLayout(new GridLayout(10, 4, 10, 10));
      for (int i=0; i < 10; i++) {
         for (int j=0; j < 4; j++) {
            JLabel label = new JLabel("label " + i + ", " + j);
            label.setFont(new Font("Arial", Font.PLAIN, 20));
            panel.add(label);
         }
      }
      return panel;
   }
   public static void main(String [] args) {
      new JScrollablePanelTest();
   }
}

출력

Java에서 스크롤 가능한 JPanel을 어떻게 구현할 수 있습니까?