Zeilenumbruch in JList-Elementen

8

Ich habe eine JList mit sehr langen Objektnamen, die dazu führen, dass die horizontale Bildlaufleiste im Bildlauffenster angezeigt wird.

Gibt es überhaupt einen Wortumbruch, so dass der gesamte Name des Artikels in zwei Zeilen erscheint, aber mit einem Klick ausgewählt werden kann? I.E sollte sich noch als einzelnes Element verhalten aber in zwei Zeilen angezeigt werden.

Hier ist, was ich getan habe, nachdem ich das Beispiel unten gesehen habe

Ich habe meinem Projekt MyCellRenderer eine neue Klasse hinzugefügt und bin dann in den Nacherstellungscode meiner Liste MyList.setCellRenderer(new MyCellRenderer(80)); hinzugefügt worden. Gibt es noch etwas, was ich tun muss?

    
koool 19.11.2011, 20:43
quelle

3 Antworten

19

Ja, mit Andrew's Code kam mir etwas in der Art:

%Vor%     
Hovercraft Full Of Eels 19.11.2011 21:21
quelle
0

Es kann noch einfacher gemacht werden. Sie können JList von Consatructor mit ListModel erstellen. In CustomListModel erweitert AbstractListModel, getElementAt () -Methode kann String mit demselben HTML-formatierten Text zurückgeben. So machen Sie das gleiche ohne CellRenderer Modifikation.

    
Dmitry V 09.01.2018 11:59
quelle
-1

Sie können die Breite auch dynamisch berechnen (anstelle eines festen Werts):

%Vor%

Wenn das Panel die Größe der Liste ändert, bleibt das Wrapping korrekt.

Aktualisieren

Und das Ergebnis sieht so aus:

    
steph 07.08.2012 17:08
quelle

Tags und Links