javabean属性的可能值列表

时间:2013-10-21 13:39:06

标签: java swing javabeans

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

dropdown for bean property

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

类型

3 个答案:

答案 0 :(得分: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.");
        }
    }
}

答案 1 :(得分:0)

我想使用Enum是最好的方法。因为你可以根据你对Enum的定义限制选项,你有严格的控制

答案 2 :(得分:0)

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

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

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