我在面板上有一个JList
。
如何居中对齐 JList
中的文字?
我似乎无法在模型的任何地方找到设置?
我已经在GUI上查找了对齐设置,但似乎无法找到它。
答案 0 :(得分:9)
这与模型无关,因为它涉及视图,ListCellRenderer是特定的。一个解决方案获取渲染器并将其horizontalAlignment设置为SwingConstants.CENTER。假设您没有使用自定义单元格渲染器,例如可以:
DefaultListCellRenderer renderer = (DefaultListCellRenderer) myJList.getCellRenderer();
renderer.setHorizontalAlignment(SwingConstants.CENTER);
答案 1 :(得分:5)
尝试以下方法:
JList list = new JList(args);
DefaultListCellRenderer renderer = (DefaultListCellRenderer)list.getCellRenderer();
renderer.setHorizontalAlignment(JLabel.CENTER);
答案 2 :(得分:0)
所有答案似乎都过时了,或者至少它们对我不起作用,我是这样解决的:
list.setCellRenderer((list, project, index, isSelected, cellHasFocus) -> {
JLabel label = new JLabel(value.getName())
label.setHorizontalAlignment(JLabel.CENTER);
return label;
});