如何制作指定大小的JInternalFrame?
我有一个 JFrame。 我已经添加了菜单栏。 我已使用以下行设置其大小和位置。
frmMain.setBounds(0, 0, 1024, 768); // JFrame
接下来,我将 JInternalFrame
添加到 JInternalFrame
的代码中,如下所示:
ifActivateProject=new JInternalFrame();
ifActivateProject.setBounds(450, 400, 300, 350);
ifActivateProject.add(pnlActivateProject);
ifActivteProject.setVisible(true);
ifActivateProject.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);
frmMain.getContentPane().add(ifActivateProject);
当我执行程序时,内部框架占据 JFrame
中的所有剩余区域。因为我已经设置了内部框架的位置和大小。它不会出现在该位置和指定的大小。
我想根据菜单单击方式显示不同尺寸的内部框架,在一个菜单上单击一个内部框架已显示。在另一个菜单上关闭该内部框架后,单击另一个应该会出现在我的 JFrame
中。所有这些内部框架都有不同的尺寸。但问题是如上面的代码片段所示添加的内部框架获取了 JFrame
的所有空间。
上面的代码有什么问题?
I have a JFrame
.
I have added menu-bar to it.
I have set its size and location using following line.
frmMain.setBounds(0, 0, 1024, 768); // JFrame
Next I have added a JInternalFrame
to the code for JInternalFrame
as follows:
ifActivateProject=new JInternalFrame();
ifActivateProject.setBounds(450, 400, 300, 350);
ifActivateProject.add(pnlActivateProject);
ifActivteProject.setVisible(true);
ifActivateProject.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);
frmMain.getContentPane().add(ifActivateProject);
When I executes the program the Internal frame occupies all the remaining area in JFrame
. As I have set the location and size of internal frame. It wont appear at that location and of the specified size.
I want to show Internal frame of different sizes depending on menu click means on one menu click one internal frame has shown. After closing that internal frame on another menu click another should be appear in my JFrame
. All these internal frames are of different sizes. But the problem is the added internal frame as shown in above code snippet acquires all the space of JFrame
.
What's wrong with above code?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
应将
JInternalFrame
添加到JDesktopPane
,而不是JFrame
。有关更多详细信息,请参阅如何使用内部框架。
A
JInternalFrrame
should be added to aJDesktopPane
, not aJFrame
.See How to Use Internal Frames for more details.