Java 显示JList中选择的多个项目
我有一个JLIST,可以选择多个选项,我需要向用户显示多个选定项目: 这就是我所尝试的: MyValuesList是用A、b、c、d初始化的 myvalues是包含值a、c的字符串数组 现在我不是要在myValues中显示要选择的值的Jlist 当对话框打开时,我希望 forString s:MyValue{ MyValuesList.setSelectedValues,true; } 其中myvalues是我需要显示为选中的值的列表,但在本例中,我只能看到上一次迭代中的s被选中Java 显示JList中选择的多个项目,java,swing,jlist,Java,Swing,Jlist,我有一个JLIST,可以选择多个选项,我需要向用户显示多个选定项目: 这就是我所尝试的: MyValuesList是用A、b、c、d初始化的 myvalues是包含值a、c的字符串数组 现在我不是要在myValues中显示要选择的值的Jlist 当对话框打开时,我希望 forString s:MyValue{ MyValuesList.setSelectedValues,true; } 其中myvalues是我需要显示为选中的值的列表,但在本例中,我只能看到上一次迭代中的s被选中 我试图找到一种
我试图找到一种方法来获取myvalues中存在的值的索引,但没有成功。请帮助我使用SetSelectedDictions,也许吧 我想这会满足你的要求
int[] select = new int[myValues.length];
int index = 0;
for(int i = 0; i < myvalues.length; i++){
if(/*condition for selection here*/)
select[index++] = i;
}
list.setSelectedIndices(Arrays.copyOf(select, index));
请注意,如果myvalues是一个列表,则可以将.length更改为.size
在任何情况下,您都需要使用SetSelectedDices来做您想做的事情。下面是来自文档的粘贴:
将选择更改为给定
大堆大于或等于模型大小的索引将被忽略。
这是一种方便的方法,可以清除选择,然后使用
在选择模型上添加SelectionInterval以添加索引。参考
到所使用的选择模型类的文档
有关如何处理小于0的值的详细信息
在这里找到了答案:
这对我有用!谢谢大家 @user2176576这个答案对你有帮助吗?