[英]Add space between JList items
如何在JList
項之間添加空格? 有沒有辦法呢?
在此圖像上白色是背景,黃色是JList
的自定義DefaultListCellRenderer
,我希望每個JList
項目都有一個彼此JList
5個像素的空間。
http://img819.imageshack.us/img819/5772/spacemd.png
dlm = new DefaultListModel<String>();
jlist = new JList<String>(dlm);
jlist.setFont(new Font("Calibri",Font.BOLD,16));
jlist.setCellRenderer(new Renderer());
jlist.setFixedCellWidth(100);
jlist.setBorder(new EmptyBorder(10,10, 10, 10));
我沒有看到您的渲染器,但您可以將該組件添加到面板中。 這個依賴於默認的FlowLayout
默認的五個像素間隙,但您也可以為面板添加邊框。
list.setCellRenderer(new DefaultListCellRenderer(){
private static final int N = 2;
@Override
public Component getListCellRendererComponent(JList list, Object value,
int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(
list, value, index, isSelected, cellHasFocus);
c.setBackground(Color.yellow);
JPanel p = new JPanel();
p.add(c);
return p;
}
});
嘗試使用JList.setFixedCellHeight(someValue),
通常也會這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.