Anordnung von JList Elementen

Status
Nicht offen für weitere Antworten.

Aish

Mitglied
Hallo alle zusammen,

ich arbeite mit einer JList und würde gerne die Elemente in den Zeilen der Liste versetzt anordnen, etwa so:

A
B​
C
D​
E
F​
usw.

Leider weiß ich nicht, wie ich das machen soll. Habe nach JListCellRenderer gegoogelt, hat mir aber nicht so weitergeholfen.
Ich hab mal den Code angehängt, den ich bisher habe mit einer ganz normalen Liste. Ich hoffe ihr könnt mir helfen.

[HIGHLIGHT="Java"]
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.SwingUtilities;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;



public class MainFrame extends JFrame
{
private static final long serialVersionUID = 4829177555746474778L;
private JList AlphabetList;

public static void main (String [] args)
{

SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
MainFrame inst = new MainFrame();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
});
}

public MainFrame()
{
super();
initGUI();

}

private void initGUI()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

String [] alphabet = new String [26];
for (char c = 'A'; c <= 'Z'; c++)
{
alphabet [c - 'A'] = String.valueOf(c);
}

AlphabetList = new JList(alphabet);
AlphabetList.addListSelectionListener(new ListSelectionListener()
{
public void valueChanged(ListSelectionEvent arg0) {
System.out.println(AlphabetList.getSelectedValue());
}
});

getContentPane().add(AlphabetList, BorderLayout.CENTER);

pack();
setSize(200,600);
AlphabetList.requestFocusInWindow();
AlphabetList.setSelectedIndex(0);
}

}

[/HIGHLIGHT]

Gruß Aish.
 

Schandro

Top Contributor
du setzt nen eigenen ListCellRenderer, rufst dort die render-Methode von einem DefaultListRenderer Object auf (das du als Membervariable gespeichert hast...), castest dessen rückgabewert zu nem JLabel, dann brauchst du nurnoch schreiben:
[highlight=Java]if(index%2==1){
label.setHorizontalAlignment(JLabel.RIGHT);
}
else{
label.setHorizontalAlignment(JLabel.LEFT);
}
[/highlight]

Probier erstmal das selber zu coden, wenn dus nicht schaffst kann ich auch gerne den Code dazu posten...

Einen JListCellRenderer gibts übrigens nicht, nur ListCellRenderer
 
Zuletzt bearbeitet:

Aish

Mitglied
Hi,

danke für die Antwort.
Also du meinst diese Methode ?

public Component getListCellRendererComponent(final JList list,
final Object value, final int index, final boolean isSelected,
final boolean cellHasFocus)

Ich verstehe aber nicht was das DefaultListRenderer Object auf und die Membervariable sind.
 

Onkel Hatti

Bekanntes Mitglied
Ja, genau richtig. Das mit der render-Methode und member Variablen zum casten hab ich auch nicht verstanden.
Wenn ein Element in die Liste eingefügt wird, wird automatisch die getListCellRendererComponent-Methode des ListCellRenderers aufgerufen. Die Methode gibt eine Component zurück. Damit kannst du also zurückgeben, was du magst, z.B. ein JLabel. Und dieses JLabel kannst du natürlich modifizieren, wie du magst.

Was eingefügt werden soll, wird in "Object value" übergeben.
Wohin es eingefügt werden soll, wird in "int index" übergeben.

Nimm also für deine Liste einen eigenen ListCellRenderer und überschreibe die Methode

public Component getListCellRendererComponent(final JList list,
final Object value, final int index, final boolean isSelected,
final boolean cellHasFocus)

Nimm den übergebenen Wert (in deinem Fall ein char) aus dem object, leg das char auf ein JLabel und mach in Abhängigkeit des index etwas damit, in diesem Fall links und rechts ausrichten.
Dann gib das erstellte JLabel zurück.
Das ist das, was Schandro gemeint hat.

Gruß
Hatti
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A GUI anordnung Java Basics - Anfänger-Themen 1
L Anordnung Java Basics - Anfänger-Themen 3
J GUI - JTextField Anordnung Java Basics - Anfänger-Themen 2
P anordnung in einem koordinatensystem Java Basics - Anfänger-Themen 7
A Intelligente Anordnung von Frames in einer Fläche Java Basics - Anfänger-Themen 4
W Anordnung von Label und Button Java Basics - Anfänger-Themen 2
Rudolf Datentypen Vectorliste mit Werten in zufälliger Anordnung Java Basics - Anfänger-Themen 5
N GUI-Layout-Problem&Anordnung Java Basics - Anfänger-Themen 14
M Automatische Anordnung und Benennung von Panels Java Basics - Anfänger-Themen 2
hdi Algorithmus zur spiralförmiger Anordnung Java Basics - Anfänger-Themen 2
B Memory - Zufällige Anordnung von Buchstabenpaaren Java Basics - Anfänger-Themen 8
P Anordnung Textfelder untereinander? Java Basics - Anfänger-Themen 16
G Anordnung von Elementen Java Basics - Anfänger-Themen 5
Mady Daten von JList & Combobox in JTable adden Java Basics - Anfänger-Themen 2
U JList erstellen Java Basics - Anfänger-Themen 2
Soloeco JList/DefaultListModel: Wie kann ich ein Panel hinzufügen? Java Basics - Anfänger-Themen 1
J Objekt bei Auswahl in jList ändern Java Basics - Anfänger-Themen 6
D JList ListSelectionEvent entfernen? Java Basics - Anfänger-Themen 13
F JList Elemente mit Strings vergleichen Java Basics - Anfänger-Themen 12
S Export aus JList Java Basics - Anfänger-Themen 6
M Erste Schritte JList einträge Java Basics - Anfänger-Themen 1
M Erste Schritte Doppelte Ausgabe? (JList) Java Basics - Anfänger-Themen 1
M Erste Schritte Auswahl in einer JList Java Basics - Anfänger-Themen 2
P JList, aus selectedValue bestimmten Wert aus Containerklasse auslesen Java Basics - Anfänger-Themen 4
N JList + DefaultListModel + JScrollPane --> ensureIndexIsVisible funktioniert nicht immer Java Basics - Anfänger-Themen 1
C JList Einträge nach Datum sortieren Java Basics - Anfänger-Themen 3
J Element zu jList hinzufügen NullPointerExcepetion Java Basics - Anfänger-Themen 2
S jList --> Array einfügen und Liste löschen Java Basics - Anfänger-Themen 5
H Kein Zugriff auf das Element einer JList möglich: Fehlermeldung Java Basics - Anfänger-Themen 2
I in listFiles() oder JList Dateiendungen entfernen Java Basics - Anfänger-Themen 14
N Erste Schritte MySQL Tabelle in JList darstellen Java Basics - Anfänger-Themen 1
O JList aktualisieren während Dateieinlesung Java Basics - Anfänger-Themen 4
B JFileChooser und JList Java Basics - Anfänger-Themen 7
OnDemand Enumeration <> JList Java Basics - Anfänger-Themen 5
P Mehrfachauswahl in einer JList Java Basics - Anfänger-Themen 2
A JList Elemente in ein andres JList Adden Java Basics - Anfänger-Themen 5
C .txt und Jlist Java Basics - Anfänger-Themen 10
J Daten in eine JList einfügen Java Basics - Anfänger-Themen 6
A JList / toString modify Java Basics - Anfänger-Themen 2
K jlist an text anpassen Java Basics - Anfänger-Themen 3
D Erste Schritte JList + Checkbox Java Basics - Anfänger-Themen 5
I kein zugriff auf jList oder Textfield Java Basics - Anfänger-Themen 2
A JList bearbeiten Java Basics - Anfänger-Themen 2
M Index einer JList ausgeben Java Basics - Anfänger-Themen 4
M Inhalt/Wert aus einer JList ablesen Java Basics - Anfänger-Themen 5
J Markierte Einträge (Dateien) in JList sollen in einen anderen Ordner verschoben werden. Java Basics - Anfänger-Themen 12
J Markierte Items in einer JLIST in einen Ordner verschieben Java Basics - Anfänger-Themen 2
A Input/Output Hashmap in einem JPanel via JList anzeigen Java Basics - Anfänger-Themen 8
S ListModel - Anzeige im JList Java Basics - Anfänger-Themen 4
H JList Java Basics - Anfänger-Themen 2
G JList Objekte richtig anzeigen in JDK 6 Java Basics - Anfänger-Themen 5
U JList Java Basics - Anfänger-Themen 6
L HashMap zu JList Java Basics - Anfänger-Themen 6
C Input/Output Inhalte von ArrayList und JList in Datei schreiben Java Basics - Anfänger-Themen 5
M Jlist Elemente hinzufügen Java Basics - Anfänger-Themen 2
F Koordinaten JList darstellen Java Basics - Anfänger-Themen 4
M BeanBinding Jlist an Jlabel Java Basics - Anfänger-Themen 2
M GUI JList - Objekte listen u. Feld anzeigen? Java Basics - Anfänger-Themen 16
E JList GUI aktualisieren? Java Basics - Anfänger-Themen 3
JAVAnnik JList Auswahl Java Basics - Anfänger-Themen 2
Z In JList per Doppelklick eine Datei öffnen (z.B. ein PDF) Java Basics - Anfänger-Themen 16
P Jlist + Popupmenu Java Basics - Anfänger-Themen 10
M Properties Eintrag löschen, welcher in der JList "ausgewählt" wurde Java Basics - Anfänger-Themen 2
c_sidi90 File Array an Jlist übergeben Java Basics - Anfänger-Themen 11
J JList Inhalt nach JButton Klick aktualisieren Java Basics - Anfänger-Themen 8
B JList und JTable: leere Zeilen bei listfiles(); Java Basics - Anfänger-Themen 5
N DefaultListModel auf JList sortieren Java Basics - Anfänger-Themen 7
A JList mit Überschrift Java Basics - Anfänger-Themen 2
K Scrollbalken in JList funktioniert nicht Java Basics - Anfänger-Themen 9
B JList wird nicht aktualisiert bzw hat keine Items Java Basics - Anfänger-Themen 2
D JList nicht sichtbar Java Basics - Anfänger-Themen 4
B JList mit Scrollbar? Java Basics - Anfänger-Themen 7
K Datenbindung an JTable, JList, Primärschlüssel verstecken Java Basics - Anfänger-Themen 4
M JList Event Java Basics - Anfänger-Themen 5
M JList Index selektieren ausschalten. Java Basics - Anfänger-Themen 7
M ArrayList<int[]> - Problem mit JList! Java Basics - Anfänger-Themen 27
M JList + ListModel Java Basics - Anfänger-Themen 26
L JList Aktualisieren funktioniert nur Zufällig Java Basics - Anfänger-Themen 3
T JList aktualisieren Java Basics - Anfänger-Themen 12
T alle Ordner in einem Ordner in JList anzeigen Java Basics - Anfänger-Themen 3
R .Jpg anzeigen lassen nach klick in JList Java Basics - Anfänger-Themen 11
F Hilfe! JList Inhalte vertauschen Java Basics - Anfänger-Themen 2
A Eintrag einer JLIST speichern Java Basics - Anfänger-Themen 3
B JList wird nach Ändern weiß Java Basics - Anfänger-Themen 11
B Einträge im JList einfügen Java Basics - Anfänger-Themen 9
S JList mit icons UND strings für Dialogbox Java Basics - Anfänger-Themen 2
hdi Fehler beim Model-Update einer JList (DefaultListModel) Java Basics - Anfänger-Themen 3
DStrohma Index einer markierten Zeile aus einer JList bekommen? Java Basics - Anfänger-Themen 5
P JList in JPanel anzeigen Java Basics - Anfänger-Themen 2
hdi Synchronisation zwischen JList und ListModel Java Basics - Anfänger-Themen 6
D Suche in JList nach dem ersten Buchstaben Java Basics - Anfänger-Themen 2
hdi JList mit Model und Observer -> Chaos, blicke nicht durch Java Basics - Anfänger-Themen 22
1 JList Problem : Synchronisation mit Vector klappt nicht :( Java Basics - Anfänger-Themen 6
G Elemente aus jList entferne. Java Basics - Anfänger-Themen 2
G JList updaten Java Basics - Anfänger-Themen 7
K jList scrollPane Java Basics - Anfänger-Themen 2
7 Java Swing: Wie JScrollPane zur JList hinzufügen? Java Basics - Anfänger-Themen 12
K JList verschiebt sich Java Basics - Anfänger-Themen 7
G String in JList Java Basics - Anfänger-Themen 11
T Jlist Object hinzufügen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben