|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.swing.DefaultListSelectionModel
public class DefaultListSelectionModel
리스트 선택의 디폴트 데이터 모델입니다.
경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 1.4 이후, 모든 JavaBeans™ 의 장기간의 운용 지원는,java.beans
패키지에 추가되고 있습니다. 자세한 것은,XMLEncoder
를 참조해 주세요.
ListSelectionModel
필드의 개요 | |
---|---|
protected boolean |
leadAnchorNotificationEnabled
|
protected EventListenerList |
listenerList
|
인터페이스 javax.swing. ListSelectionModel 로부터 상속된 필드 |
---|
MULTIPLE_INTERVAL_SELECTION , SINGLE_INTERVAL_SELECTION , SINGLE_SELECTION |
생성자 의 개요 | |
---|---|
DefaultListSelectionModel ()
|
메소드의 개요 | ||
---|---|---|
void |
addListSelectionListener (ListSelectionListener l)
선택 범위의 변경이 통지되는 청취자를 리스트에 추가합니다. |
|
void |
addSelectionInterval (int index0,
int index1)
선택 범위를, 현재의 선택 범위와 index0 이상 index1 이하의 인덱스가 가리키는 범위와의 화집합으로 변경합니다. |
|
void |
clearSelection ()
선택 범위를 빈 상태(empty)세트로 변경합니다. |
|
Object |
clone ()
이 선택 모델의 복제를, 같은 선택 상태로 돌려줍니다. |
|
protected void |
fireValueChanged (boolean isAdjusting)
일련의 조정이 종료한 것을 청취자에게 통지합니다. |
|
protected void |
fireValueChanged (int firstIndex,
int lastIndex)
firstIndex ,lastIndex 간에 선택의 값이 변경된 것을 ListSelectionListeners 에 통지합니다. |
|
protected void |
fireValueChanged (int firstIndex,
int lastIndex,
boolean isAdjusting)
|
|
int |
getAnchorSelectionIndex ()
setSelectionInterval(), addSelectionInterval(), 또는 removeSelectionInterval()의 직전의 호출로부터, 최초의 인덱스 인수를 돌려줍니다. |
|
int |
getLeadSelectionIndex ()
setSelectionInterval(), addSelectionInterval(), 또는 removeSelectionInterval()의 직전의 호출로부터, 2 번째의 인덱스 인수를 돌려줍니다. |
|
|
getListeners (Class <T> listenerType)
이 모델에 FooListener 로서 현재 등록되어 모든 객체의 배열을 돌려줍니다. |
|
ListSelectionListener [] |
getListSelectionListeners ()
이 DefaultListSelectionModel 에 등록되어 모든 리스트 선택 청취자의 배열을 돌려줍니다. |
|
int |
getMaxSelectionIndex ()
마지막에 선택된 인덱스를 돌려주는지, 선택 범위가 빈 상태(empty)의 경우에 -1 를 돌려줍니다. |
|
int |
getMinSelectionIndex ()
최초로 선택된 인덱스를 돌려주는지, 선택 범위가 빈 상태(empty)의 경우에 -1 를 돌려줍니다. |
|
int |
getSelectionMode ()
현재의 선택 모드를 돌려줍니다. |
|
boolean |
getValueIsAdjusting ()
선택으로 일련의 변경을 적용중인 경우에 true 를 돌려줍니다. |
|
void |
insertIndexInterval (int index,
int length,
boolean before)
index 의 전/후부터 시작되는 length 인덱스를 삽입합니다. |
|
boolean |
isLeadAnchorNotificationEnabled ()
leadAnchorNotificationEnabled 플래그의 값을 돌려줍니다. |
|
boolean |
isSelectedIndex (int index)
지정의 인덱스가 선택되고 있는 경우에 true 를 돌려줍니다. |
|
boolean |
isSelectionEmpty ()
인덱스가 선택되어 있지 않은 경우에 true 를 돌려줍니다. |
|
void |
moveLeadSelectionIndex (int leadIndex)
선두의 선택 인덱스를 설정해, 모든 선택치를 미변경대로 합니다. |
|
void |
removeIndexInterval (int index0,
int index1)
선택 모델로부터, index0 와 index1 를 양단으로서 포함한 구간의 인덱스를 삭제합니다. |
|
void |
removeListSelectionListener (ListSelectionListener l)
선택 범위의 변경이 통지되는 청취자를 리스트로부터 삭제합니다. |
|
void |
removeSelectionInterval (int index0,
int index1)
선택 범위를, 현재의 선택 범위와 index0 이상 index1 이하의 인덱스가 가리키는 범위와의 차이 집합으로 변경합니다. |
|
void |
setAnchorSelectionIndex (int anchorIndex)
엥커 선택 인덱스를 설정해, 모든 선택치를 변경하지 않는 채로 합니다. |
|
void |
setLeadAnchorNotificationEnabled (boolean flag)
leadAnchorNotificationEnabled 플래그의 값을 설정합니다. |
|
void |
setLeadSelectionIndex (int leadIndex)
선두의 선택 인덱스를 설정해, 엥커와 새로운 선두의 사이의 값이, 모두 선택 또는 모두 선택 해제의 어느 쪽인지인 것을 보증합니다. |
|
void |
setSelectionInterval (int index0,
int index1)
선택 범위를 index0 이상 index1 이하로 변경합니다. |
|
void |
setSelectionMode (int selectionMode)
선택 모드를 설정합니다. |
|
void |
setValueIsAdjusting (boolean isAdjusting)
선택에 대한 복수의 변경을 1 개의 변경의 일부이다고 볼지 어떨지를 지정하는, valueIsAdjusting 프로퍼티을 설정합니다. |
|
String |
toString ()
이 객체의 프로퍼티을 표시 및 식별하는 캐릭터 라인을 돌려줍니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
필드의 상세 |
---|
protected EventListenerList listenerList
protected boolean leadAnchorNotificationEnabled
생성자 의 상세 |
---|
public DefaultListSelectionModel()
메소드의 상세 |
---|
public int getMinSelectionIndex()
ListSelectionModel
내의 getMinSelectionIndex
public int getMaxSelectionIndex()
ListSelectionModel
내의 getMaxSelectionIndex
public boolean getValueIsAdjusting()
true
를 돌려줍니다.
ListSelectionModel
내의 getValueIsAdjusting
ListSelectionModel.setValueIsAdjusting(boolean)
public int getSelectionMode()
ListSelectionModel
내의 getSelectionMode
ListSelectionModel.setSelectionMode(int)
public void setSelectionMode(int selectionMode)
ListSelectionModel.SINGLE_SELECTION
- 1 회에 1 개의 리스트 인덱스만을 선택할 수 있습니다. 이 모드에서는,setSelectionInterval
메소드와 addSelectionInterval
메소드는 동등하고, 어느쪽이나 현재의 선택을, 2 번째의 인수로 나타내지는 인덱스 ( 「리드 인덱스」)로 옮겨놓습니다.
ListSelectionModel.SINGLE_INTERVAL_SELECTION
- 1 회에 1 개의 연속 구간만을 선택할 수 있습니다. 이 모드에서는,addSelectionInterval
은, 지정된 간격이 기존의 선택 범위에 인접하고 있거나 오버랩 하고 있거나 하지 않는 한 setSelectionInterval
와 같게 동작하기 위해(때문에) (현재의 선택을 옮겨놓는다), 선택 범위를 확장하는 목적으로 사용할 수 있습니다.
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION
- 이 모드에서는, 선택 대상으로 제한은 없습니다.
ListSelectionModel
내의 setSelectionMode
IllegalArgumentException
- 허가된 선택 모드가 아닌 경우ListSelectionModel.getSelectionMode()
public boolean isSelectedIndex(int index)
ListSelectionModel
내의 isSelectedIndex
public boolean isSelectionEmpty()
ListSelectionModel
내의 isSelectionEmpty
public void addListSelectionListener(ListSelectionListener l)
ListSelectionModel
내의 addListSelectionListener
l
- ListSelectionListenerListSelectionModel.removeListSelectionListener(javax.swing.event.ListSelectionListener)
,
ListSelectionModel.setSelectionInterval(int, int)
,
ListSelectionModel.addSelectionInterval(int, int)
,
ListSelectionModel.removeSelectionInterval(int, int)
,
ListSelectionModel.clearSelection()
,
ListSelectionModel.insertIndexInterval(int, int, boolean)
,
ListSelectionModel.removeIndexInterval(int, int)
public void removeListSelectionListener(ListSelectionListener l)
ListSelectionModel
내의 removeListSelectionListener
l
- ListSelectionListenerListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public ListSelectionListener [] getListSelectionListeners()
DefaultListSelectionModel
에 등록되어 모든 리스트 선택 청취자의 배열을 돌려줍니다.
ListSelectionListener
.
리스트 선택 청취자가 현재 등록되지 않은 경우는 빈 상태(empty)의 배열addListSelectionListener(javax.swing.event.ListSelectionListener)
,
removeListSelectionListener(javax.swing.event.ListSelectionListener)
protected void fireValueChanged(boolean isAdjusting)
protected void fireValueChanged(int firstIndex, int lastIndex)
firstIndex
,lastIndex
간에 선택의 값이 변경된 것을 ListSelectionListeners
에 통지합니다.
protected void fireValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
firstIndex
- 범위의 선두의 인덱스lastIndex
- 범위의 마지막 인덱스isAdjusting
- 일련의 조정의 마지막 변경인 경우는 trueEventListenerList
public <T extends EventListener > T[] getListeners(Class <T> listenerType)
FooListener
로서 현재 등록되어 모든 객체의 배열을 돌려줍니다. FooListener
는,addFooListener
메소드를 사용해 등록합니다.
FooListener.class
라고 하는 클래스 리터럴을 사용해,listenerType
인수를 지정할 수 있습니다. 예를 들어, 이 리스트 선택 청취자에 대한 DefaultListSelectionModel
인스턴스 m
의 조회는 다음의 코드로 실시합니다.
ListSelectionListener[] lsls = (ListSelectionListener[])(m.getListeners(ListSelectionListener.class));이러한 청취자가 없는 경우는 빈 상태(empty)의 배열을 돌려줍니다.
listenerType
- 요구되는 청취자의 형태. java.util.EventListener
의 하위 인터페이스를 지정
FooListener
로서 등록되어 모든 Object 의 배열
그러한 청취자가 추가되어 있지 않은 경우는 빈 상태(empty)의 배열
ClassCastException
- listenerType
가 java.util.EventListener
를 구현하는 클래스 또는 인터페이스를 지정하지 않는 경우
getListSelectionListeners()
public void setLeadAnchorNotificationEnabled(boolean flag)
isLeadAnchorNotificationEnabled()
public boolean isLeadAnchorNotificationEnabled()
leadAnchorNotificationEnabled
플래그의 값을 돌려줍니다. leadAnchorNotificationEnabled
가 true 의 경우, 선택 영역의 모든 변경에 가세해, 선두 인덱스와 엥커 인덱스에의 변경을 커버하는 경계를 사용해, 모델은 통지 이벤트를 생성합니다. 플래그를 false 로 설정하면(자), 마지막 변경 후에 선택 또는 선택 해제된 요소만을 포함하도록(듯이), 이벤트의 경계를 한정할 수 있습니다. 어느 방법에서도, 모델은 선두 변수와 엥커 변수를 내부적으로 계속 관리합니다. 디폴트는 true 입니다. 주:선두 또는 엥커는, 선택 영역으로 변경을 더하지 않아도 변경할 수 있습니다. 이러한 변경의 통지는, 뷰내에서 새로운 선두나 엥커를 갱신할 필요가 있는 경우 등에 중요합니다. 따라서, 디폴트 값를 변경할 때는 잘 주의해 주세요.
leadAnchorNotificationEnabled
플래그의 값setLeadAnchorNotificationEnabled(boolean)
public void clearSelection()
ListSelectionModel
내의 clearSelection
ListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public void setSelectionInterval(int index0, int index1)
index0
이상 index1
이하로 변경합니다. 다만,index0
는 index1
이하가 아니어도 괜찮습니다.
SINGLE_SELECTION
선택 모드에서는, 2 번째의 인덱스만이 사용됩니다.
이것에 의해 현재의 선택 범위가 변경되는 경우에는, 각 ListSelectionListener
으로 변경이 통지됩니다.
어느 쪽인가의 인덱스가 -1
인 경우, 이 메소드는 아무것도 실시하지 않고, 예외없이 돌려주어집니다. 어느 쪽인가의 인덱스가 -1
보다 작은 경우,IndexOutOfBoundsException
가 throw 됩니다.
ListSelectionModel
내의 setSelectionInterval
index0
- 구간의 한편의 구석의 값index1
- 구간의 한편의 구석의 값
IndexOutOfBoundsException
- 한편의 인덱스가 -1
보다 작은 경우 (한편, 어느 쪽의 인덱스도 -1
나오지 않는 경우)addListSelectionListener(javax.swing.event.ListSelectionListener)
public void addSelectionInterval(int index0, int index1)
index0
이상 index1
이하의 인덱스가 가리키는 범위와의 화집합으로 변경합니다.
SINGLE_SELECTION
선택 모드에서는, 이것은 setSelectionInterval
의 호출과 동등해, 2 번째의 인덱스만이 사용됩니다. SINGLE_INTERVAL_SELECTION
선택 모드에서는, 이 메소드는, 지정된 간격이 기존의 선택 범위에 인접하고 있거나 오버랩 하고 있거나 하지 않는 한 setSelectionInterval
와 같게 동작하기 위해(때문에), 범위를 확장하는 목적으로 사용할 수 있습니다.
이것에 의해 현재의 선택 범위가 변경되는 경우에는, 각 ListSelectionListener
으로 변경이 통지됩니다. 다만,index0
는 index1
이하가 아니어도 괜찮습니다.
어느 쪽인가의 인덱스가 -1
인 경우, 이 메소드는 아무것도 실시하지 않고, 예외없이 돌려주어집니다. 어느 쪽인가의 인덱스가 -1
보다 작은 경우,IndexOutOfBoundsException
가 throw 됩니다.
ListSelectionModel
내의 addSelectionInterval
index0
- 구간의 한편의 구석의 값index1
- 구간의 한편의 구석의 값
IndexOutOfBoundsException
- 한편의 인덱스가 -1
보다 작은 경우 (한편, 어느 쪽의 인덱스도 -1
나오지 않는 경우)addListSelectionListener(javax.swing.event.ListSelectionListener)
,
setSelectionInterval(int, int)
public void removeSelectionInterval(int index0, int index1)
index0
이상 index1
이하의 인덱스가 가리키는 범위와의 차이 집합으로 변경합니다. 다만,index0
는 index1
이하가 아니어도 괜찮습니다.
SINGLE_INTERVAL_SELECTION
선택 모드에서는, 삭제에 의해 2 개의 섹션이 생성되는 경우, 삭제 범위가 선택 범위의 말미 (값이 큰 편의 구석)까지 확장됩니다. 예를 들어 선택 범위가 0 ~ 10
인 경우, 사용자가 임의의 순서로 인덱스 5, 6
을 지정하면(자), 결과적으로 얻을 수 있는 선택 범위는 0 ~ 4
가 됩니다.
이것에 의해 현재의 선택 범위가 변경되는 경우에는, 각 ListSelectionListener
으로 변경이 통지됩니다.
어느 쪽인가의 인덱스가 -1
인 경우, 이 메소드는 아무것도 실시하지 않고, 예외없이 돌려주어집니다. 어느 쪽의 인덱스도 @code -1} 가 아니고, 한편의 인덱스가 -1
보다 작은 경우,IndexOutOfBoundsException
가 throw 됩니다.
ListSelectionModel
내의 removeSelectionInterval
index0
- 구간의 한편의 구석의 값index1
- 구간의 한편의 구석의 값
IndexOutOfBoundsException
- 한편의 인덱스가 -1
보다 작은 경우 (한편, 어느 쪽의 인덱스도 -1
나오지 않는 경우)addListSelectionListener(javax.swing.event.ListSelectionListener)
public void insertIndexInterval(int index, int length, boolean before)
ListSelectionModel
내의 insertIndexInterval
public void removeIndexInterval(int index0, int index1)
ListSelectionModel
내의 removeIndexInterval
public void setValueIsAdjusting(boolean isAdjusting)
valueIsAdjusting
프로퍼티을 설정합니다. 이 프로퍼티의 값을 사용해, 생성된 ListSelectionEvent
의 valueIsAdjusting
프로퍼티을 초기화할 수 있습니다.
예를 들어, 사용자의 드래그에 응해 선택이 갱신되는 경우, 이 프로퍼티의 값은, 드래그의 개시시에는 true
, 종료시에는 false
로 설정할 수 있습니다. 드래그중, 청취자는,valueIsAdjusting
프로퍼티의 값이 true
로 설정된 이벤트를 수신합니다. 드래그의 종료시, 변경이 finalize 되면(자), 청취자가 수신하는 이벤트의 프로퍼티의 값은 false
가 됩니다. 청취자는, 변경이 finalize 되었을 때에만 갱신을 실행하고 싶은 경우, 이 패턴을 사용할 수 있습니다.
이 프로퍼티의 값을 true
로 설정하면(자), 1 회의 변경의 일부라고 보여지는 일련의 변경이 스타트 합니다. 프로퍼티의 값을 false
에 되돌리면(자), 선택 전체의 변경 (선택이 있었을 경우)을 기술하는,valueIsAdjusting
프로퍼티의 값이 false
로 설정된 이벤트가 송신됩니다.
ListSelectionModel
내의 setValueIsAdjusting
isAdjusting
- 프로퍼티의 변경 후의 값ListSelectionModel.getValueIsAdjusting()
,
ListSelectionEvent.getValueIsAdjusting()
public String toString()
Object
내의 toString
String
표현public Object clone() throws CloneNotSupportedException
listenerList
는 복제되지 않습니다.
Object
내의 clone
CloneNotSupportedException
- 선택 모델이, (a) Cloneable 인터페이스를 구현하지 않고, 또 (b) clone
메소드를 정의하지 않는 경우Cloneable
public int getAnchorSelectionIndex()
ListSelectionModel
내의 getAnchorSelectionIndex
ListSelectionModel.getLeadSelectionIndex()
,
ListSelectionModel.setSelectionInterval(int, int)
,
ListSelectionModel.addSelectionInterval(int, int)
public int getLeadSelectionIndex()
ListSelectionModel
내의 getLeadSelectionIndex
ListSelectionModel.getAnchorSelectionIndex()
,
ListSelectionModel.setSelectionInterval(int, int)
,
ListSelectionModel.addSelectionInterval(int, int)
public void setAnchorSelectionIndex(int anchorIndex)
ListSelectionModel
내의 setAnchorSelectionIndex
getAnchorSelectionIndex()
,
setLeadSelectionIndex(int)
public void moveLeadSelectionIndex(int leadIndex)
leadIndex
- 새로운 선두의 선택 인덱스setAnchorSelectionIndex(int)
,
setLeadSelectionIndex(int)
,
getLeadSelectionIndex()
public void setLeadSelectionIndex(int leadIndex)
엥커 인덱스의 값이 선택되어 있지 않은 경우, 같은 것을 반대로 실시합니다. 즉 낡은 범위의 값을 선택하고 나서 새로운 범위의 값을 선택 해제합니다.
이 변경의 이벤트를 1 개 생성해, 모든 청취자에게 통지합니다. 이 이벤트내에서 최소한의 경계를 생성하기 위해(때문에), 1 회의 패스로 조작을 실시합니다. 이 방법에서는, 브로드캐스트 된 ListSelectionEvent 내의 선두와 말미의 인덱스는, 이 메소드에 의해 실제로 값이 변경된 셀을 참조합니다. 이 조작을 2 회의 스텝에서 처리하면(자), 선택 상태의 효과는 같아도, 2 개의 이벤트가 생성되어 버립니다. 게다가 나중에 설정되기 (위해)때문에인 만큼 클리어 되는 셀이 발생해 버려, 변경 대상의 값에 관련해 조작되는 영역이 넓어집니다.
이 메소드를 UI 클래스의 mouseDragged
메소드로 사용하면(자), 선택을 확장할 수 있습니다.
ListSelectionModel
내의 setLeadSelectionIndex
getLeadSelectionIndex()
,
setAnchorSelectionIndex(int)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.