我正在为我的大学项目开发一个软件。我正在使用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链接看到它们。非常感谢。
答案 0 :(得分:5)
当您使用SwingX标记问题时 - 使用它而不是重新发明轮子:-)您要查找的组件称为JXTaskPane / Container。
BTW:在EDT上睡觉(正如你在你的代码片段中的mouseListener方法中所做的那样)错误 - 就像真的错误一样 - 根本不这样做。对于手动设置尺寸/位置组件也是如此:这是合适的LayoutManager的专有任务。