gpt4 book ai didi

java gui - 重叠面板?

转载 作者:行者123 更新时间:2023-11-30 05:16:11 25 4
gpt4 key购买 nike

我只是想创建这个小模拟器。在 GUI 中,我有两个主要组件 - map (占据窗口的大部分)和右侧的控制面板。现在,我想在窗口底部添加一个时间 slider (仅在 map 下运行,而不在控制面板下运行)。我可以在运行程序类(初始化主窗口)中执行此操作,但它在逻辑上应该属于控制面板 - 它会触发所有相关事件。有办法做到吗?我应该使用哪些 Swing 组件以及如何包装它们? (我尝试使用 netbeans 来实现此目的,但是,这是我第一次使用它,我运气不佳)。

非常感谢您的帮助

最佳答案

你可以使用BorderLayout非常简单地达到你想要的结果;例如

JPanel pnl = new JPanel(new BorderLayout());

pnl.add(mapPnl, BorderLayout.CENTER);
pnl.add(controlPnl, BorderLayout.EAST);
pnl.add(timerPnl, BorderLayout.SOUTH);

如果您预计将有更多组件添加到顶级 JPanel 中,我建议您研究一下 GridBagLayout,因为它提供了更大的灵 active 。

控件和计时器相关的事实与可视组件的布局无关。通常,您会在业务对象级别维护这种关系;例如

Controller controller = new Controller();
JPanel controlPnl = new MyControlPanel(controller);
JPanel timerPnl = new MyTimerPanel(controller.getTimer());

关于java gui - 重叠面板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1170929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com