如何将 Java bean 属性设置为专家属性?
Java Beans Introspection API 在 PropertyDescriptor
类中包含方法 isExpert
。基于 Bean 的 GUI 编辑器(例如 WindowsMaker)使用它来隐藏或显示“外来”属性。
是什么导致 Java bean 的某个属性被认为是“专家”?例如,Swing 库如何将某些属性设置为“专家属性”?如何以编程方式对我编写的 Java bean 执行相同的操作?
The Java Beans Introspection API includes in the PropertyDescriptor
class the method isExpert
. Bean-based GUI editors, like WindowsMaker, use this to hide or show "exotic" properties.
What causes a certain property of a Java bean to be considered "expert"? How does the Swing library, for example, sets certain properties as "expert properties"? How can I programmatically do the same for Java beans that I write?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这显然是在 JDK 中使用非标准编译器扩展完成的。
如果您查看 Swing 源代码,一些 Javadoc 注释包含
@beaninfo
标记,其中包含此类信息:这是一个示例,位于 JTable 类源代码。
我还找到了这篇文章,谈论
@ beaninfo
标签。This apparently is done in the JDK using a non-standard compiler extension.
If you have a look at the Swing source code, some Javadoc comments include a
@beaninfo
tag, containing such information:Here is an example, in the JTable class source code.
I also found this article, talking about the
@beaninfo
tag.您可以为您的 bean 创建一个 BeanInfo 类。这允许您自定义属性描述符。 JavaBean 教程中有一节介绍了这一点。
You can create a BeanInfo class for your bean. This allows you to customize the property descriptor. There is a section covering this in the JavaBean tutorial.