【问题标题】:Breaking up Java Swing classes in Netbeans palette在 Netbeans 调色板中分解 Java Swing 类
【发布时间】:2010-07-29 13:39:03
【问题描述】:

我想知道分解大型 Java Swing 类的最佳方法。我的一些相当大,我想开始正确模块化我的代码的过程。我看到我可以将我的类添加到 Netbeans 的调色板,但问题是当我将它们“拖放”到 GUI 设计器中时,它们没有向我显示它的外观的图形表示。一些第三方 jar 文件支持添加到调色板,它们提供了运行后的图形预览。

我的问题是,我不知道这个“预览”被称为什么的正确术语,所以我发现很难搜索。我想要一些关于如何使我当前的类能够添加到调色板的文档或教程,并查看它们在 GUI 设计器中的外观。

谢谢!

【问题讨论】:

    标签: java swing netbeans palette


    【解决方案1】:

    要获得图标,您需要为您的班级提供BeanInfo

    最简单的方法是右键单击项目窗口中的类并选择BeanInfo editor...

    您需要切换到设计器视图来配置哪些属性是专家/隐藏/首选。

    • 首选属性显示在“属性”窗口的最顶部折叠(属性)中。
    • 专家属性出现在第二层(其他属性)。
    • 隐藏根本不出现。

    您还可以指定属性是否被绑定、约束等。要设置图标,请选择树的最顶部节点 (BeanInfo),您将看到图标的属性。

    让 NetBeans 将您的组件视为容器(或不是容器):

    • 切换到源视图
    • 找行读
      // Here you can add code for customizing the BeanDescriptor.
    • 添加此行:
      beanDescriptor.setValue("isContainer", Boolean.TRUE); // Or FALSE if it's not a container

    【讨论】:

    • 谢谢 - 但是当您说图标时,您是指调色板上显示的 32x32 图标之一吗?或者放置在编辑器中时出现的实际图像。我对编辑器中出现的图像感兴趣。
    • 图标显示在调色板中。编辑器中的呈现是组件如何绘制自身的结果。如果在编辑过程中需要进行不同的绘制,可以通过检查 java.beans.Beans.isDesignTime() 的值来实现。
    • 我知道这是检查它是否正在被编辑的地方,但是我在哪里提供它在 gui 设计器中如何呈现的细节?我一直在看 bean javadocs,但运气不佳。
    • 在给定零参数构造函数提供的默认状态的情况下,编辑器中显示的是组件的绘制代码(paintComponent、paintBorder、paintChildren 等)正在呈现的内容。
    猜你喜欢
    • 2012-01-22
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 2018-05-30
    相关资源
    最近更新 更多