Weitere aktuelle Java-Titel finden Sie bei dpunkt.
 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Klasse javax.swing.JList1.2

java.lang.Object
   |
   +--java.awt.Component
         |
         +--java.awt.Container
               |
               +--javax.swing.JComponent
                     |
                     +--javax.swing.JList

Deklaration

public class JList
extends javax.swing.JComponent
implements javax.swing.Scrollable, javax.accessibility.Accessible

Beschreibung

Eine JList erlaubt es dem Benutzer, eine oder mehrere Elemente einer Liste zu selektieren. Die Daten werden in einem ListModel verwaltet.

Eine JList kann auf folgendem Weg erstellt werden:
 String[] data = {"one", "two", "three", "four"};
 JList dataList = new JList(data);
 // Die Elemente ausgaben
 for(int i = 0; i < dataList.getModel().getSize(); i++) {
   System.out.println(
        dataList.getModel().getElementAt(i));
 }

Im Standardzustand kann man bei der JList beliebige Selektionen vornhemen, definiert durch den Selektionsmodell ListSelectionModel.MULTIPLE_INTERVAL_SELECTION.

Der Inhalt der JList wird durch das Datenmodell definiert, welches durch ListDataListener mit der JList kommunizieren kann, wenn sich Änderungen ergeben haben.

Die JList unterstützt keine Selektion durch einen Doppelklick. Dies kann leicht durch folgenden Code nachprogrammiert werden:
 list = new JList(dataModel);
 MouseListener mouseListener = new MouseAdapter() {
  public void mouseClicked(MouseEvent e) {
    if (e.getClickCount() == 2) {
       int index = list.locationToIndex(e.getPoint());
       System.out.println("Double clicked on Item " + index);
    }
  }
 };
 list.addMouseListener(mouseListener);


 
Datenelemente
public final static intVERTICAL     [1.4]
public final static intVERTICAL_WRAP     [1.4]
public final static intHORIZONTAL_WRAP     [1.4]
 
Konstruktoren
publicJList(ListModel dataModel)
publicJList(Object[] listData)
publicJList(Vector listData)
publicJList()
 
Methoden
public ListUIgetUI()
public voidsetUI(ListUI ui)
public voidupdateUI()
public StringgetUIClassID()
public ObjectgetPrototypeCellValue()
public voidsetPrototypeCellValue(Object prototypeCellValue)
public intgetFixedCellWidth()
public voidsetFixedCellWidth(int width)
public intgetFixedCellHeight()
public voidsetFixedCellHeight(int height)
public ListCellRenderergetCellRenderer()
public voidsetCellRenderer(ListCellRenderer cellRenderer)
public ColorgetSelectionForeground()
public voidsetSelectionForeground(Color selectionForeground)
public ColorgetSelectionBackground()
public voidsetSelectionBackground(Color selectionBackground)
public intgetVisibleRowCount()
public voidsetVisibleRowCount(int visibleRowCount)
public intgetLayoutOrientation()     [1.4]
public voidsetLayoutOrientation(int layoutOrientation)     [1.4]
public intgetFirstVisibleIndex()
public intgetLastVisibleIndex()
public voidensureIndexIsVisible(int index)
public voidsetDragEnabled(boolean b)     [1.4]
public booleangetDragEnabled()     [1.4]
public intgetNextMatch(String prefix, int startIndex, Position.Bias bias)     [1.4]
public StringgetToolTipText(MouseEvent event)
public intlocationToIndex(Point location)
public PointindexToLocation(int index)
public RectanglegetCellBounds(int index0, int index1)
public ListModelgetModel()
public voidsetModel(ListModel model)
public voidsetListData(Object[] listData)
public voidsetListData(Vector listData)
protected ListSelectionModelcreateSelectionModel()
public ListSelectionModelgetSelectionModel()
protected voidfireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
public voidaddListSelectionListener(ListSelectionListener listener)
public voidremoveListSelectionListener(ListSelectionListener listener)
public ListSelectionListener[]getListSelectionListeners()     [1.4]
public voidsetSelectionModel(ListSelectionModel selectionModel)
public voidsetSelectionMode(int selectionMode)
public intgetSelectionMode()
public intgetAnchorSelectionIndex()
public intgetLeadSelectionIndex()
public intgetMinSelectionIndex()
public intgetMaxSelectionIndex()
public booleanisSelectedIndex(int index)
public booleanisSelectionEmpty()
public voidclearSelection()
public voidsetSelectionInterval(int anchor, int lead)
public voidaddSelectionInterval(int anchor, int lead)
public voidremoveSelectionInterval(int index0, int index1)
public voidsetValueIsAdjusting(boolean b)
public booleangetValueIsAdjusting()
public int[]getSelectedIndices()
public voidsetSelectedIndex(int index)
public voidsetSelectedIndices(int[] indices)
public Object[]getSelectedValues()
public intgetSelectedIndex()
public ObjectgetSelectedValue()
public voidsetSelectedValue(Object anObject, boolean shouldScroll)
public DimensiongetPreferredScrollableViewportSize()
public intgetScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
public intgetScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
public booleangetScrollableTracksViewportWidth()
public booleangetScrollableTracksViewportHeight()
protected StringparamString()
public AccessibleContextgetAccessibleContext()


 

Datenelemente im Detail

public final static int VERTICAL     [1.4]
Konstante für das Standard-Layout: Eine Spalte von Zellen.
public final static int VERTICAL_WRAP     [1.4]
Konstante für das »Zeitung«-Layout: Die Zellen werden zunächst vertikal angeordnet, dann in die nächste Spalte übernommen.
public final static int HORIZONTAL_WRAP     [1.4]
Konstante für das Layout, bei dem zunächst die Zeile mit mehreren Spalten gefüllt werden, und dann eine neue Zeile verwendet wird.

 

Konstruktoren im Detail

public JList(ListModel dataModel)
Das Datenmodell der JList.
public JList(Object[] listData)
Erzeugt eine JList aus den angegebenen Daten.
public JList(Vector listData)
Erzeugt eine JList aus den angegebenen Daten.
public JList()
Erzeugt eine Jlist mit einem leeren Datenmodell.

 

Methoden im Detail

public ListUI getUI()
Liefert das Look-and-Feel-Objekt dieser Komponente.
public void setUI(ListUI ui)
Setzt das Look-and-Feel-Objekt.
public void updateUI()
Setzt die User-Interface-Properties auf die des aktuellen Look-and-Feel zurück.
public String getUIClassID()
Liefert das Suffix, welches zum Konstruieren des Look-and-Feel-Klassennamen benötigt wird.
public Object getPrototypeCellValue()
Liefert einen exemplarischen Wert (Prototyp). Anhand dieses Wertes errechnet die JList die benötigte Größe der Komponente, da normalerweise alle Zellen die gleiche Größe aufweisen.
public void setPrototypeCellValue(Object prototypeCellValue)
Setzt den prototypischen Wert für die JList, nach der sie ihre Größe bestimmen kann. Hierzu werden die Eigenschaften fixedCellWidth und fixedCellHeight gesetzt. Diese Methode sollte benutzt werden, wenn die Anzahl der darzustellenden Daten zu groß ist und man durch den übergebenen Wert die maximale Ausdehnung weiss.
public int getFixedCellWidth()
Liefert den Wert, der die feste Zellenbreite angibt.
public void setFixedCellWidth(int width)
Setzt die feste Breite jeder Zelle. Wenn der Wert auf -1 gesetzt wird (der Standard), wird die Breite für jede Zelle neu berechnet.
public int getFixedCellHeight()
Liefert die feste Höhe der Zellen oder -1, wenn die Höhe nicht für alle gleich ist.
public void setFixedCellHeight(int height)
Setzt die Höhe jeder Zelle auf einen festen Wert. Bei dem Wert von -1 (der Standard) wird die Höhe individuell errechnet.
public ListCellRenderer getCellRenderer()
Liefert den ListCellRenderer.
public void setCellRenderer(ListCellRenderer cellRenderer)
Setzt den ListCellRenderer.
public Color getSelectionForeground()
Liefert die Vordergrundfarbe der Selektion.
public void setSelectionForeground(Color selectionForeground)
Setzt die Vordergrundfarbe der Selektion.
public Color getSelectionBackground()
Liefert die Hintergrundfarbe der Selektion.
public void setSelectionBackground(Color selectionBackground)
Setzt die Hintergrundfarbe der Selektion.
public int getVisibleRowCount()
Liefert die Anzahl der anzuzeigenden Zeilen.
public void setVisibleRowCount(int visibleRowCount)
Setzt die Anzahl der anzuzeigenden Zeilen. Anhand der Anzahl wird die Größe der Komponente berechnet.
public int getLayoutOrientation()     [1.4]
Liefert die Layout-Richtlinie, also JList.VERTICAL, JList.VERTICAL_WRAP oder JList.HORIZONTAL_WRAP.
public void setLayoutOrientation(int layoutOrientation)     [1.4]
Setzt die Layout-Richtlinie. Mögliche Werte sind
JList.VERTICAL
1
2
3
4

JList.HORIZONTAL_WRAP
1 2
3 4

JList.VERTICAL_WRAP
1 3
2 4
public int getFirstVisibleIndex()
Liefert den Index der ersten sichtbaren Zelle, oder -1, wenn keine Zelle sichtbar ist.
public int getLastVisibleIndex()
Liefert den Index der letzten sichtbaren Zelle, oder -1, wenn keine Zelle sichtbar ist.
public void ensureIndexIsVisible(int index)
Wenn in einer JScrollPane integriert, wird der entsprechende Index in den sichtbaren Bereich versetzt.
public void setDragEnabled(boolean b)     [1.4]
Aktiviert die Drag-Unterstützung. Ein transferHandler muss jedoch zusätzlich angegeben sein.
public boolean getDragEnabled()     [1.4]
Liefert den Wert für dragEnabled.
public int getNextMatch(String prefix, int startIndex, Position.Bias bias)     [1.4]
Liefert das nächste Element, das mit dem angegebenen Prefix startet. Die Such-Richtung wird dabei über das Argument bias angegeben.
public String getToolTipText(MouseEvent event)
Liefert den Tooltip-Text der Komponente.
public int locationToIndex(Point location)
Liefert zu einem Punkt den bestmöglich passenden Index bzw -1, wenn wenn das Modell leer ist.
public Point indexToLocation(int index)
Liefert den Punkt des angegebenen Index in JList-Koordinaten.
public Rectangle getCellBounds(int index0, int index1)
Liefert die Ausmaße des angegebenen Bereiches.
public ListModel getModel()
Liefert das Datenmodell.
public void setModel(ListModel model)
Setzt das Datenmodell.
public void setListData(Object[] listData)
Erzeugt ein ListModel aus den angegebenen Daten.
public void setListData(Vector listData)
Erzeugt ein ListModel aus den angegebenen Daten.
protected ListSelectionModel createSelectionModel()
Erzeugt ein Exemplar eines DefaultListSelectionModel. Diese Methode kann überschrieben werden, wenn ein eigenes Selektionsmodell genommen werden soll.
public ListSelectionModel getSelectionModel()
Liefert das aktuelle Selektionsmodell.
protected void fireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
Informiert die Listener, dass die Selektion geändert wurde.
public void addListSelectionListener(ListSelectionListener listener)
Fügt den angegebenen Listener zur Liste der ListSelectionListener hinzu.
public void removeListSelectionListener(ListSelectionListener listener)
Entfernt den angegebenen Listener.
public ListSelectionListener[] getListSelectionListeners()     [1.4]
Liefert alle registrierten ListSelectionListener.
public void setSelectionModel(ListSelectionModel selectionModel)
Setzt das Selektionsmodell.
public void setSelectionMode(int selectionMode)
Setzt den Selektionsmodus auf Einfachselektion (ListSelectionModel.SINGLE_SELECTION), Ein-Intervall-Selektion (ListSelectionModel.SINGLE_INTERVAL_SELECTION) oder Mehrere-Intveralle-Selektion (ListSelectionModel.MULTIPLE_INTERVAL_SELECTION).
public int getSelectionMode()
Liefert den Selektionsmodus.
public int getAnchorSelectionIndex()
Liefert den Ankerindex. Dies ist das erste Argument der zuletzt benutzten Methode addSelectionModel oder setSelectionInterval. Der Ankerindex wird auf bestimmten Betriebssystemen, wie beispielsweise Windows, besonders dargestellt.
public int getLeadSelectionIndex()
Liefert den Leitindex. Dies ist das zweite Argument der zuletzt aufgerufenen Methode addSelectionInterval bzw. setSelectionInterval.
public int getMinSelectionIndex()
Liefert den kleinsten, selektierten Index.
public int getMaxSelectionIndex()
Liefert den größten selektierten Index.
public boolean isSelectedIndex(int index)
Liefert die Aussage, ob der angegebene Index selektiert ist.
public boolean isSelectionEmpty()
Liefert true, wenn nichts selektiert ist.
public void clearSelection()
Deselektiert alles.
public void setSelectionInterval(int anchor, int lead)
Selektiert das angegebene Interval. Beide angegebenen Indizes werden mitselektiert.
public void addSelectionInterval(int anchor, int lead)
Fügt den angegebenen Bereich zur Selektion hinzu.
public void removeSelectionInterval(int index0, int index1)
Entfernt den angegebenen Bereich aus der Selektion.
public void setValueIsAdjusting(boolean b)
Setzt den Wert für isAdjusting. Wenn der Wert auf true gesetzt ist, bedeutet dies, dass eine Aktion vom Benutzer noch nicht beendet wurde, beispielsweise der Button nach einem Drag nicht wieder losgelassen wurde.
public boolean getValueIsAdjusting()
Liefert den Wert für isAdjusting. Wenn der Wert auf true gesetzt ist, bedeutet dies, dass eine Aktion vom Benutzer noch nicht beendet wird, beispielsweise der Button nach einem Drag nicht wieder losgelassen wurde.
public int[] getSelectedIndices()
Liefert die selektierten Indizes.
public void setSelectedIndex(int index)
Selektiert eine einzelne Zelle.
public void setSelectedIndices(int[] indices)
Selektiert mehrere Zellen.
public Object[] getSelectedValues()
Liefert ein Array der selektierten Exemplare.
public int getSelectedIndex()
Liefert den ersten selektierten Index oder -1, wenn nichts selektiert ist.
public Object getSelectedValue()
Liefert das erste selektierte Objekt oder null, wenn nichts selektiert wurde.
public void setSelectedValue(Object anObject, boolean shouldScroll)
Selektiert das angegebenen Objekt und scrollt, wenn so angegeben, zu dem Objekt.
public Dimension getPreferredScrollableViewportSize()
Berechnet dieGröße der Viewport, die benötigt wird, um die visibleRowCount zu Berücksichtigen.
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Liefert den Abstand, um auf die nächste oder vorherige Zeile oder Spalte zu scrollen.
public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
Liefert den Abstand, der beim einem Block-Scrollen zurückgelegt wird.
public boolean getScrollableTracksViewportWidth()
Liefert true, wenn sich die JList in einer JScrollPane befindet und der Viewport größer als die präferierte Größe der JList ist.
public boolean getScrollableTracksViewportHeight()
Liefert true, wenn sich die JList in einer JScrollPane befindet und der Viewport größer als die präferierte Größe der JList ist.
protected String paramString()
Liefert eine String-Repräsentation dieser Komponente. Dies dient nur zum Debuggen und kann bei unterschiedlichen VMs unterschiedlich ausfallen.
public AccessibleContext getAccessibleContext()
Liefert das AccessibleContext-Exemplar zu dieser JList.


 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.