java - 在 netbeans 中使用 java 创建一个新组件

标签 java swing layout-manager swingx jxtaskpane

我正在为我的大学项目开发​​一个软件。我正在使用 java 开发我的桌面应用程序。为此,我想添加一个这样的组件:http://www.mediafire.com/view/?6y1183p8u6phwzg

我想添加一个像下面框架左侧的组件。它是一个可调整大小的组件,包含标题及其子菜单。我们也可以在 Windows XP 操作系统的左侧看到这些组件。我努力开发这个组件并且只能制作一个可调整大小的组件,但它并没有减少它们之间的空白。我将把我的代码和我的应用程序的示例设计放在下面。如果有人能给我一个解决方案让我的组件按我希望的方式工作,或者提供一个好的解决方案来制作这个组件,我将非常感激。非常感谢。:)

http://www.mediafire.com/view/?c9b8jwp4c558zae

    private void lbl1MousePressed(java.awt.event.MouseEvent evt) {                                  
    if (!(jpnTop.getSize().equals(lbl1.getSize()))) {
        try {
            Thread.sleep(100);
            jpnTop.setSize(lbl1.getSize());

        } catch (InterruptedException ex) {
        }

    } else {
        try {
            Thread.sleep(100);
            jpnTop.setSize(169, 162);


        } catch (InterruptedException ex) {
        }
    }
}  

  private void lbl2MousePressed(java.awt.event.MouseEvent evt) {                                  
    if (!(jpnLow.getSize().equals(lbl2.getSize()))) {
        try {
            Thread.sleep(100);
            jpnLow.setSize(lbl2.getSize());

        } catch (InterruptedException ex) {
        }

    } else {
        try {
            Thread.sleep(100);
            jpnLow.setSize(169, 162);

        } catch (InterruptedException ex) {
        }
    }
}

Ps:由于该网站的限制,我无法上传我的图片,我恳请您使用上面的 medeafire 链接查看它们。非常感谢。

最佳答案

当您用 SwingX 标记您的问题时- 使用它而不是重新发明轮子:-)您正在寻找的组件称为 JXTaskPane/Container。

顺便说一句:在 EDT 上 hibernate (就像您在片段中的 mouseListener 方法中所做的那样)是错误的 - 就像在真的错误中一样 - 根本就不要这样做。手动设置尺寸/位置组件也是如此:这是合适的 LayoutManager 的专有任务。

关于java - 在 netbeans 中使用 java 创建一个新组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12336927/

相关文章:

Java - 当我在输入中不输入任何内容时,我会收到红色错误

java - 需要选择什么序列化框架,在java中提供API来做呢?

java - CheckBoxPreference - onSharedPreferenceChanged 方法未被调用

java - 在 Swing 中,您可以将事件发布到 EDT 事件队列的顶部吗?

java - JButton "disappears"尽管它位于 JLabel 之外的另一层

java - 将 txt 或 xls 加载到 JTable

java - 选项卡的组件未显示

java - java GUI 中的 CardLayout()

java - 嵌套 GridBagLayout - 如何将子级的列与父级的列对齐

java - 使用 Streams 将 PriorityQueue 转换为 Map