java - 我应该使用哪种 java swing 布局

标签 java swing layout layout-manager

我需要创建这个框架:

我应该使用哪种布局?我正在考虑框或网格布局,但右侧的菜单将是一个问题。

最佳答案

您的代码中有很多重复。我会分解每个部分,使其成为一个单独的组件,并专注于其单独的布局需求。

enter image description here

在您的主屏幕中,您有 4 个主要区域(不包括菜单)。

我会使用类似 GridBagLayout 的东西来布置这 4 个部分。这允许每个部分能够增长到所需的高度,而不会影响其他部分。您还可以根据需要为每个部分提供单独的增长提示。

第一部分是一个JLabel,所以非常简单

enter image description here

这部分基本上是三个标签,对齐方式略有不同。我仍然会使用 GridBagLayout,因为它提供了最大的灵 active 以允许单个单元格对齐,同时允许您提供调整大小的提示(例如,我可能使时间行的宽度与屏幕大小相同改变了)。

enter image description here

这部分有点复杂。基本上,它是左右相同的组件,具有一些巧妙的属性,您可以毫无问题地更改标签的位置。

可以使用 GridLayout 布置各个点/标签。我可能会出于谨慎而犯错并使用 GridBagLayout,因为它允许标签的大小与点不同

然后我会使用类似 GridLayout 的东西将每一面放置到一个组件上(然后将其放置在主屏幕上)

enter image description here

同样,这个简单的相同组件镜像。我会简单地创建一个可以通过属性调整以更改对齐方式的单个组件。

然后我会简单地使用 GridBagLayout 根据需要布置每个标签。我会这样做,因为它允许每一行都有自己的高度。

我在空手道方面也有 15 年的引用经验。我可以来为你工作吗?

关于java - 我应该使用哪种 java swing 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15422871/

相关文章:

java - java中的Volatile关键字错误

java - RESULT_CANCELED 上的图片文件

java - 将数据插入到java JDBC中的很多列中

java - 如何在 JFreechart 中获取点的菱形

android - 在android中将图像从一个 Activity 传递到另一个 Activity

javascript - d3.pack() : multiple parent circles each with a unique color

html - HTML 和 CSS 中带有底线的图书索引布局样式

java - 检测给定文件是否为图像并且是否为 java 中特定类型的有效图像

Java - 如何使用方法

java - 如何更改 Swing 标签中的间隙