0

我想创建一个 Bean,您可以在其中选择属性表单下拉列表的值(可能性有限),例如在这种情况下:

bean 属性的下拉列表

我希望能够将用户可以选择的颜色数量限制为两种,红色和蓝色。我的属性是类型Java.awt.Color

4

3 回答 3

0

如果您正在制作 JavaBean,那么 setter 方法负责验证参数。如果参数无效,则抛出IllegalArgumentException.

public class ListProperty {
    private Color color
    //Other properties you like.

    public void setColor(Color color) {
        if (Color.RED.equals(color) || Color.BLUE.equals(color) {
            this.color = color;
        } else {
            throw new IllegalArgumentException("The color is not red or blue.");
        }
    }
}
于 2013-10-21T13:55:42.500 回答
0

我想在这里使用 Enum 是最好的方法。由于您可以根据您对 Enum 的定义来限制选项,因此您可以严格控制

于 2013-10-21T13:59:07.977 回答
0

“布尔属性编辑器是一个离散选项菜单,它覆盖 PropertyEditorSupport.getTags 方法以返回包含“True”和“False”的 String[]:

public String[] getTags() {
    String result[] = { "True", "False" };
    return result;
}

"

这是做 Bean 值的离散列表的机制。需要覆盖该功能。

于 2013-11-05T06:59:44.650 回答