我想将我的内部框架图标化到主框架的相邻面板而不是主框架的默认左下角。我正在使用 jdesktopframe 和它里面的内部框架。我想图标化连接细节,它是一个内部框架,图标化图标应该出现在最小化按钮所在的位置,而不应该出现在主框架的左下角。我还想在内部框架最小化和最大化时调整主框架的大小
1 回答
三国纷争
TA贡献1804条经验 获得超7个赞
诀窍是您不对对象执行setLocation()或setBounds()操作JInternalFrame。这将移动窗格,当您“图标化”内部框架时,窗格不再可见。但是当你“图标化”内部框架时,你改变了现在Icon可见的。要获取图标,请使用类上的方法。之后是对接收到的对象的简单调用。你可以像这样使用它:getDesktopIcon()JInternalFramesetLocation()JInternalFrame.JDesktopIcon
frame.addInternalFrameListener(new InternalFrameAdapter() {
@Override
public void internalFrameIconified(InternalFrameEvent e) {
frame.getDesktopIcon().setLocation(frame.getLocation().x, frame.getLocation().y);
}
});
显然,您必须为自己计算正确的位置,即您希望放置图标的位置。此示例仅显示如何将图标移动到正确的位置,因此它不会在左下角打开。
您可能想为相反的事件添加一个类似的事件处理程序,以打开图标所在internalFrameDeiconified的原始面板,而不是面板在“图标化”之前所在的位置。JInternalFrame
添加回答
举报
0/150
提交
取消