0

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

编辑:细胞渲染器

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;
4

0 回答 0