Swing LineBorder mit Abstand?

Status
Nicht offen für weitere Antworten.

0001001

Bekanntes Mitglied
Hi,

ich suche nach einer Kombination aus LineBorder und EmptyBorder.

Unten eine ausführbare Demo.

Wie man sieht, wird ein markiertes Element in der JList mit einer LineBorder umgeben.
Allerdings hätte ich es gerne, dass der Abstand der zwischen den Elementen größer ist. Das könnte man mit setBorder(BorderFactory.createEmptyBorder(5,5,5,5)) machen, allerdings hätte man dann keinen Rahmen mehr wie in mit einer LineBorder.

Was ich gerne hätte:
Einen 1px großen, farbigen Rahmen um jedes Element der Liste und zusätzlich einen Abstand zwischen den Elementen der Liste von 5. Nur wie mache ich das?

Java:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;

import javax.swing.DefaultListCellRenderer;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;
import javax.swing.border.LineBorder;


public class Demo extends JFrame{
	public Demo(){
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);		
		JList list = new JList(new String[]{"Dagobert","Tick","Trick"});		
		list.setCellRenderer(new MyCellRenderer());
		this.getContentPane().add(new JScrollPane(list), BorderLayout.CENTER);
		this.pack();
		this.setSize(200, 200);
	}

	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable(){
			public void run(){
				new Demo().setVisible(true);
			}
		});
	}
	
	class MyCellRenderer extends DefaultListCellRenderer{
		public Component getListCellRendererComponent (JList list, Object value, int index, boolean isSelected, boolean cellHasFocus){
			if (isSelected && isEnabled()){
					setBorder(new LineBorder(new Color(99, 191, 255), 1, true));
				}
				else{
					setBackground(Color.white);
					setForeground(Color.black);
					setBorder(null);
				}				
			setText((String)value);
			return this;
		}
	}
}
 
S

SlaterB

Gast
man kann mehrere Border zusammensetzten,
BorderFactory#createCompoundBorder
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J LineBorder bei JRadioButton AWT, Swing, JavaFX & SWT 3
M JavaFX Abstand zwischen AnchorPane und Labels in dem HBox halten AWT, Swing, JavaFX & SWT 1
Z Swing Kann man denn abstand zwischen zwei Buttons berechnen AWT, Swing, JavaFX & SWT 5
H JavaFX Abstand rechts zur scrollbar AWT, Swing, JavaFX & SWT 1
D JGridLayout zwischen Zeilen bestimmter Abstand AWT, Swing, JavaFX & SWT 3
J Abstand im JLable AWT, Swing, JavaFX & SWT 2
S JMenuBar Frame Abstand AWT, Swing, JavaFX & SWT 3
J Swing Unteren Abstand für JTable in JScrollPane festlegen AWT, Swing, JavaFX & SWT 10
P Swing JLabel Schriftzeichen Abstand Leerzeichen AWT, Swing, JavaFX & SWT 4
E LayoutManager GridBagLayout in BorderLayout - Abstand bei Resizing AWT, Swing, JavaFX & SWT 2
D JTabel: Überschrift, Abstand zwischen Tabellen, Spalten-Farbe ändern AWT, Swing, JavaFX & SWT 2
D Tabellen Header & Abstand der Zeilen AWT, Swing, JavaFX & SWT 8
M gridbaglayout - abstand bei label und field AWT, Swing, JavaFX & SWT 8
B JLabel Abstand wegkriegen AWT, Swing, JavaFX & SWT 2
C Swing JBorderLayout - Abstand AWT, Swing, JavaFX & SWT 7
P JButton - innerer Abstand veränderbar? AWT, Swing, JavaFX & SWT 6
steff2808 JLabel mit grossem Abstand von einem cm? AWT, Swing, JavaFX & SWT 5
hdi BoxLayout mit Abstand? AWT, Swing, JavaFX & SWT 5
A JButton Abstand Text - Rand AWT, Swing, JavaFX & SWT 4
D RadioButton abstand entfernen AWT, Swing, JavaFX & SWT 2
S Abstand zwischen Labeln auf 0 setzen AWT, Swing, JavaFX & SWT 6
N Abstand des Textes vom Rahmen bei JLabel AWT, Swing, JavaFX & SWT 2
G LayoutManager und Abstand AWT, Swing, JavaFX & SWT 6
O Buttons gleich groß + gleicher Abstand AWT, Swing, JavaFX & SWT 3
I JLabel Text Abstand AWT, Swing, JavaFX & SWT 9
C Abstand von Buttons zu Jpanel AWT, Swing, JavaFX & SWT 5
DeeDee0815 Abstand ZUM BorderLayout AWT, Swing, JavaFX & SWT 13
loadbrain 3 JLabels untereinander ohne Abstand AWT, Swing, JavaFX & SWT 4
G Abstand zwischen den Buttons in einer Toolbar AWT, Swing, JavaFX & SWT 3
B Abstand zwischen einzelnen Elementen einstellen AWT, Swing, JavaFX & SWT 2
N JTable Abstand zwischen einzelnen Spalten AWT, Swing, JavaFX & SWT 6
S Applet mit AWT: Abstand zum Rand ändern AWT, Swing, JavaFX & SWT 5
G Abstand einfügen! AWT, Swing, JavaFX & SWT 5
G abstand zwischen den buttons unterschiedlich AWT, Swing, JavaFX & SWT 2
Z komponenten "einfrieren" - abstand zwischen AWT, Swing, JavaFX & SWT 10
G Ungewollter Abstand zwischen Gui -Elementen / Insets setzen AWT, Swing, JavaFX & SWT 2
G BoxLayout: Abstand zwischen vertikalen Komponenten! AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben