jlist 예제

jlist 예제
0 August 2, 2019

이전에 보여 준 ListDemo 예제에는 내용이 변경될 수 있는 목록이 있습니다. ListDemo.java에서 ListDemo의 소스 코드를 찾을 수 있습니다. 다음은 변경 가능한 목록 모델 개체를 만들고, 초기 항목을 넣고, 목록 모델을 사용하여 목록을 만드는 ListDemo 코드입니다: 단순, 동적 콘텐츠, JList 응용 프로그램은 DefaultListModel 클래스를 사용하여 목록 요소를 유지할 수 있습니다. 이 클래스는 ListModel 인터페이스를 구현하고 java.util.vector와 유사한 API도 제공합니다. 보다 사용자 지정 ListModel 구현이 필요한 응용 프로그램은 대신 수신기관리 및 알림에 대한 기본 지원을 제공하는 AbstractListModel을 하위 클래스로 지정하려고 할 수 있습니다. 예를 들어, AbstractListModel의 읽기 전용 구현: 이 예제에서는 Java 스윙 JList를 사용하는 방법을 보여 주려고 하며, JList는 요소 목록을 표시할 수 있는 스윙 구성 요소입니다. 또한 이 구성 요소를 사용하면 하나 이상의 요소를 시각적으로 선택할 수 있습니다. 이 문서에서는 JList를 사용하여 JList 기능을 사용하여 작업하는 방법을 보여 주며 JList를 사용하여 직원 이름 목록을 표시하고 JList에서 동적으로 단일 이름을 추가/제거하도록 하는 간단한 예제를 보여 주시겠습니다. 사용자 지정 셀 렌더러가 있는 목록의 예제는 제공하지 않지만 사용자 지정 렌더러가 있는 콤보 상자의 예가 있고 콤보 상자는 목록과 동일한 유형의 렌더러를 사용합니다.

사용자 지정 렌더러 제공에 설명된 예제를 참조하십시오. 이것은 자바 스윙 JList를 사용하는 방법에 대한 예입니다. 다른 JList 생성자를 사용하면 벡터 또는 ListModel 인터페이스를 준수하는 개체에서 목록을 초기화할 수 있습니다. 배열 또는 벡터로 목록을 초기화하면 생성자가 암시적으로 기본 목록 모델을 만듭니다. 기본 목록 모델은 목록에서 항목을 추가, 제거 또는 바꿀 수 없습니다. 항목을 개별적으로 변경할 수 있는 목록을 만들려면 목록 모델을 DefaultListModel 인스턴스와 같은 변경 가능한 목록 모델 클래스의 인스턴스로 설정합니다. 목록을 만들 때 또는 setModel 메서드를 호출하여 목록의 모델을 설정할 수 있습니다. 예제를 참조하면 목록에서 항목 추가 및 항목 제거를 참조하세요. 목록이 단일 선택 모드이므로 이 코드는 getSelectedIndex를 사용하여 선택한 항목의 인덱스를 얻을 수 있습니다.

JList는 선택 모드에서 두 개 이상의 항목을 선택할 수 있도록 허용하는 경우 선택을 설정하거나 가져오는 다른 방법을 제공합니다. 원하는 경우 목록 자체가 아니라 목록 선택 모델에서 이벤트를 수신할 수 있습니다. ListSelectionDemo는 목록 선택 모델에서 목록 선택 이벤트를 수신하는 방법을 보여 주며 목록의 선택 모드를 동적으로 변경할 수 있는 예제입니다. JList의 셀 페인팅은 셀렌더 속성으로 목록에 설치된 셀 렌더러라는 대리자에서 처리됩니다. 렌더러는 셀을 페인트하는 “고무 스탬프”와 같이 사용되는 java.awt.Component을 제공합니다. 셀을 페인팅해야 할 때마다 목록의 ListUI는 셀 렌더러에게 구성 요소에 대해 묻고, 해당 구성 요소를 제자리에 이동하고, 도색 방법을 통해 셀의 내용을 페인트하도록 합니다. JLabel 구성 요소를 사용하여 렌더링하는 기본 셀 렌더러는 목록의 ListUI에 의해 설치됩니다. // 목록의 각 개체에 대한 아이콘과 문자열을 표시합니다.

Posted by medmedia