4
我有用户可拖动JToolBars
添加到JPanel
的北部,东部和西部地区与BorderLayout
。当应用程序退出时,我想要保存用户已停靠JToolBars
的区域,以便在下次应用程序启动时尊重此偏好。有没有办法找到哪个区域BorderLayout已停靠用户拖动JToolBar
我已经检查了属性更改侦听器的方法,并尝试获取BorderLayout
的实例JPanel
并询问每个添加的组件的约束条件,但无法找到正确的信息。我也浏览了源代码,并且大部分用户拖动似乎都被委派给了UI,并且在我读完所有内容时努力保持上下文。
任何挥杆爱好者都知道这里的答案吗?
似乎工作。用System.out.println(((BorderLayout)e.getContainer()。getLayout())。getConstraints(toolBar));':-D – 2014-09-29 09:34:30
我也是,谢谢两位:在ContainerListener.componentAdded方法中,通过使用BorderLayout.getConstraints(e.getChild())方法返回区域,即北,西等。 – Hamish258 2014-09-29 09:40:28
@ Hamish258 http://java-sl.com/tip_multiple_floatable_toolbars.html这也可能是有用的。您可以在LayoutManager级别上执行相同的操作 – StanislavL 2014-09-29 10:56:47