如何在Java中禁用列表框(JList)的多选功能

6

我应该如何在Java的列表框(JList)中禁用多选?

代码:

configId.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
defaultModel = new FTCSDefaultListModel();
defaultModel.addElement(cecfgVo.getConfigIdList());
configId = new FTCSList(defaultModel);
configId.setVisibleRowCount(10);
JScrollPane pane = new JScrollPane(
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
pane.setPreferredSize(new Dimension(100,100));
pane.setViewportView(configId);
2个回答

15

使用:

JList list = new JList(); list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

更多信息请参考docs.oracle.com:jList:setSelectionMode


-3

使用从JComponent继承的setEnabled(boolean enabled)方法来启用/禁用JList,如下所示:

yourJlistObject.setEnabled(false);

来自JComponent JavaDocs

public void setEnabled(boolean enabled) 设置此组件是否启用。已启用的组件可以响应用户输入,而未启用的组件无法响应用户输入。一些组件在禁用时可能会更改其视觉表示,以向用户提供反馈,告知他们无法接受输入。注意:禁用组件不会禁用其子组件。注意:禁用轻量级组件不会阻止其接收MouseEvents。


3
为什么这是正确答案?这会禁用整个Jlist,而不是多选。 - rciafardone

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接