JInternalFrame

本文介绍了如何通过Java Swing自定义JInternalFrame的界面,包括隐藏标题栏和边框的方法,以及如何在最大化状态下移除这些元素。此外还提供了一种在JMenuBar中使用自定义图标控制JInternalFrame状态的技术方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近我也在研究JInternalFrame,期间也遇到过你所提到的问题。今天我把我研究的结果告诉你一下。
(1),要隐藏JInternalFrame的标题栏就用((BasicInternalFrameUI)yourInternalFrame.getUI()).setNorthPane(null);。要隐藏JInternalFrame的边框要用yourInternalFrame.setBorder(BorderFactory.createEmptyBorder());。
(2)要显示标题栏和边框要用yourInternalFrame.updateUI();。
(3),如果你要在最大化的时候去除标题栏和边框就得重载JInternalFrame的setMaximum(boolean b)函数,具体如下:
public void setMaximum(boolean b) throws PropertyVetoException {
super.setMaximum(b);
if(b){
((BasicInternalFrameUI)this.getUI()).setNorthPane(null);
super.setBorder(BorderFactory.createEmptyBorder());
}
}

还有如果你想在JMenuBar中添加控制JInternalFrame的按钮,建议你用一个JLabel放置到JMenuBar的。具体步骤如下:
1.在JLabel上添加一张图片,该图片中有三个图标分别是最小化,最大化,关闭。(该图片可以到Photoshop中去截取)。
2.在你确定已经把所有要用的菜单都添加到JMenubar后就用yourMenubar.add(Box.createHorizontalGlue());来设置yourMenubar的布局
3.将第1步中的Label直接添加到yourMenubar中, yourMenubar.add(yourLabel);

以上为我的研究结果,具体如何用那三个图标控制JInternalFrame就看你自己的实现。

转载于   http://bbs.bccn.net/thread-127934-1-1.html    Sun_NetBeans

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值