在netbeans中使用java创建新组件

时间:2012-09-09 06:07:02

标签: java swing layout-manager swingx jxtaskpane

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

我想添加一个类似于下方框架左侧的组件。它是一个可调整大小的组件,包含标题和子菜单。我们还可以在Windows XP OS的左侧看到这些组件。我努力开发这个组件,只能制作一个可调整大小的组件,但它不会减少它们之间的空白空间。我将把我的代码放在下面并对我的应用程序进行抽样设计。我将非常感谢任何人可以给我一个解决方案,让我的组件工作,我希望或提供一个很好的解决方案来制作这个组件。非常感谢你。:)

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链接看到它们。非常感谢。

1 个答案:

答案 0 :(得分:5)

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

BTW:在EDT上睡觉(正如你在你的代码片段中的mouseListener方法中所做的那样)错误 - 就像真的错误一样 - 根本不这样做。对于手动设置尺寸/位置组件也是如此:这是合适的LayoutManager的专有任务。