选择了没有元素

时间:2015-07-15 04:52:09

标签: java jlist defaultlistmodel cellrenderer

我有一个JList,它是一个设置大小(Dimensions),由一个用户最初指定的字符串数组组成。只要元素超出维度范围,JList就会嵌套在ScrollPane中。我的问题是,如果JList只有例如4个项目并且用户点击最后一个索引下面的某个位置,则选择最后一个索引。我的JList用DefaultListModel初始化,并有一个CellRenderer使它成为一个复选框列表。即使没有点击某个元素,如何让JList停止选择最后一个项?

编辑: 的CellRenderer

Color background = null;
    Color foreground = null;
    setOpaque(true);
    setText(value.toString());
    if (isSelected) {
        setForeground(Color.red);
        setSelected(true);
        value = value.toString().substring(0, value.toString().length() - 1);
        setText(value.toString());
    } else {
        if (value.toString().endsWith("t")) {
            background = Color.white;
            foreground = Color.green;
            setSelected(true);
            setBackground(background);
            setForeground(foreground);
            value = value.toString().substring(0, value.toString().length() - 1);
            setText(value.toString());
        } else {
            background = Color.white;
            foreground = Color.blue;
            setSelected(false);
            setBackground(background);
            setForeground(foreground);
            value = value.toString().substring(0, value.toString().length() - 1);
            setText(value.toString());
        }
    }
    return this;

0 个答案:

没有答案