gpt4 book ai didi

java - 使用 setBounds() 创建 GUI

转载 作者:行者123 更新时间:2023-12-01 20:18:07 24 4
gpt4 key购买 nike

我读到使用 setBounds() 命令创建 GUI 是不好的。

我知道如何使用布局管理器,但我不得不说它们也有其缺点。

我现在正在编写游戏,有时我需要将组件堆叠在一起。我发现没有办法使用布局管理器来做到这一点,但 setBounds() 工作得很好。

您能否解释一下如何使用布局管理器堆叠组件,并告诉我为什么为此目的使用 setBounds() 方法不好?或者与 Java 编码的游戏 GUI 结合使用是否可以?

最佳答案

在计算控件的正确大小、调整 GUI 大小时将所有内容放置在正确的位置等方面,布局管理器可以减轻您的负担。

基本上,你只需告诉布局管理器“我想要这个控件在角落里”,布局管理器负责将其保留在那里,无论窗口发生什么情况,无论用户是否调整它的大小,移动它,.. .

游戏界面可能更加动态,元素不断移动。布局管理器通常不是特别擅长这些东西,它们通常是为静态用户界面设计的。大多数桌面软件(需要引用?;))都利用此类静态界面,并且布局管理器可以帮助此类界面的程序员,以便他们不必担心上述所有细节。

由于游戏界面是一个对于布局管理器来说并不理想的用例,因此不将其用于所有用途是绝对合理的。您仍然可以结合使用这两种技术 - 使用布局管理器来定位静态界面元素(您应该在某处有一个菜单按钮或类似的东西?),但对所有移动的动态元素使用绝对定位。

不过,我还是建议您研究一下 JavaFX,正如我在上面的评论中所述。它更适合绘制动画、移动的组件,并且可以为您节省大量工作。

当然总有异常(exception) - 例如,数独界面可以通过布局管理器做得很好,尽管它绝对是一款游戏。

关于java - 使用 setBounds() 创建 GUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45374051/

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