Java Beans Introspection API在PropertyDescriptor
类中包含方法isExpert
。基于Bean的GUI编辑器,如WindowsMaker,使用它来隐藏或显示“异国情调”属性。
是什么导致Java bean的某个属性被视为“专家”?例如,Swing库如何将某些属性设置为“专家属性”?我如何以编程方式对我编写的Java bean执行相同的操作?
答案 0 :(得分:2)
这显然是在JDK中使用非标准编译器扩展完成的。
如果您查看Swing源代码,一些Javadoc注释包含@beaninfo
标记,其中包含以下信息:
/**
* ... Some comment ...
* @beaninfo
* bound: true
* expert: true
*/
public void setSomething(SomeType value) {
// ...
}
以下是JTable class source code中的一个示例。
我还找到this article,谈论@beaninfo
标记。
答案 1 :(得分:1)
您可以为bean创建一个BeanInfo类。这允许您自定义属性描述符。 JavaBean tutorial中有一节介绍了这一点。