HTML 有一个文档对象模型,Javascript 可以对其进行操作/移动。
当我在 Swing 中创建 GUI 时,模型似乎非常不同(我不知道模型的名称),因为我正在创建布局管理器,并将对象粘贴在其中。
我的问题:有没有办法以类似 DOM 的方式操作 Java GUI?
[例如,我希望能够删除/添加节点、移动子节点等...]
Thanks!
对于 Swing 组件,一切都从一组 JFrame 开始(您也可以有 JWindow 和 JDialog,但通常至少有一个根框架)。最有可能的是,您关心的是该 JFrame 的 contentPane(但您也可能关心其拥有的 Windows 等...)。
因此,从 JFrame 中,您可以获得如下内容窗格:
Container contentPane = frame.getContentPane();
从那里,您可以开始使用以下组件树向下查找:
Component[] children = contentPane.getComponents();
从子项中,您可以通过以下方式获取其父项:
Container parent = child.getParent();
要将组件添加到容器:
container.add(someComponent);
container.validate();
要从容器中删除组件:
container.remove(someComponent);
container.validate();
要将组件从一个容器移动到另一个容器,只需将其从一个容器中删除并将其添加到另一个容器中即可。
我不确定这是否能回答你的问题。如果您可以发布您正在尝试做的事情的真实示例,那就更容易了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)