问题标签 [layout-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JPanel 中的固定宽度、可变高度和流
我对 Java 的布局管理器有一个恼人的问题。我有以下情况:在面板A中有两个具有绝对布局的面板B和具有 FlowLayout 的C。B是高度定制的,并且通过setPreferredSize
. C应具有与B相同的固定宽度,但在其他方面具有可变高度,具体取决于流中添加了多少组件。生成的 A应该具有固定的宽度和高度——至少这是我想要的。A.height + B.height
但是我得到的是面板A的宽度根本不固定(即使我设置了它的首选大小),并且面板C中的内容不会自动换行,而是显示在一条长线上。当然,这也使B的宽度大于应有的宽度。
我能做些什么来解决这个问题?有没有更好的布局,还是我必须使用绝对布局来模拟所有这些?
java - GridBagLayout:均匀分布的单元格
是否可以使用 GridBagLayout 管理器完全模拟 GridLayout 的行为?
基本上,我有一个 8x8 网格,其中每个单元格应具有相同的宽度和高度。GridLayout 自动执行此操作。但我想在网格中添加另一行和另一列,其大小与其他网格不同。该行/列应占用可能剩余的所有剩余空间(因为可用大小不能平均分配到 8 个单元格中)。这甚至可能吗,还是我 - 再次 - 必须使用不同的布局管理器?
编辑
这是我想要实现的简单图形,简化为只有 4 个单元格:
彩色单元格是我添加到实际网格(灰色)中的单元格,其中单元格具有相同的 height 和 width x
。所以网格的高度和宽度是4*x
。我现在希望其他单元格具有必要的宽度/高度(minimumSize)加上完整尺寸的其余可用宽度/高度。
如果整个面板的大小发生变化,灰色网格单元应再次占用尽可能多的空间。
java - 为什么 setLocation() 不移动我的标签?
我有以下代码,我尝试将 aJLabel
放在 a 上的自定义位置JFrame
。
它似乎没有移动到我想要的地方。
c++ - 为什么 QT 中的布局管理器不起作用?
我正在开发一个小型 qt 程序,并在 QMainWindow 子类构造函数中编写了上述代码。但是显示的小部件搞砸了。感谢所有建议!
以下是结果截图:
java - GridBagLayout 发疯了
我有一个 GridBagLayout,但是一个标签 (maxSizeLbl) 发疯了,另一个标签 (maxDateLbl) 不可见,有人知道我做错了什么吗?
这是图片:
这是代码:
提前致谢。
java - Java Swing:如何为组件定义一个最小维度(两者中的一个)?
要成功定义最小尺寸,我必须执行以下操作:
当我留下一条线时它不起作用,这很奇怪,但这不是重点。
我该怎么做才能仅限制两个维度(宽度或高度)之一,并让组件和/或布局管理器自动决定未指定的维度?
当我对我不想限制的维度使用非常小的值时,许多组件显示错误(即太小)。
java - 关于 java swing/GridBagLaytout 的帮助
我目前正在尝试实现一个可以被视为RDF编辑器的 Swing/GUI。
对于每个属性,我可以添加/删除一个或多个存储值的小部件(JTextField、JScrollPane+JTextArea、JCombo 等......)。
我一直在尝试使用GridBagLayout将组件放置到位,但我可以获得任何好的结果。关于我应该如何为这个设计使用 GridBagLayout 的任何建议?或者我应该使用另一个 LayoutManager 吗?
谢谢,
皮埃尔
design-patterns - 如何编写布局管理器?
我想为 j2me 编写一个布局管理器。我已经有了小部件和面板(在这种情况下,面板是一组小部件)。现在我想添加动态布局管理,所以当我在最外面的面板上调用 doLayout 时,内部小部件和面板会根据设备的宽度和高度重新排列。
我想知道布局管理器是否有任何众所周知的模式。
java - Java BorderLayout 等大小/对齐
使用 BorderLayout,我将如何添加两个大小和对齐方式相等的组件,并将调整大小。
例如,我将使用 textarea1 和 textarea2
最初面板为 200,100:textarea1 为 0,0,大小为 100, 100 & textarea2 为 100, 0,大小为 100,100
窗格大小调整为 300,300:textarea1 为 0,0,大小为 150, 300 & textarea2 为 150, 300
如果 BorderLayout 或任何其他布局管理器更适合这种类型的活动,我该如何做到这一点。
java - Java 布局管理器
与编写处理调整大小功能的侦听器相比,使用现有布局管理器有什么好处?例如,我需要在网格中排列按钮并将网格居中:
我没有在布局管理器中摸索,而是编写了一小段代码,每当调整 JPanel 的大小时,它就会为按钮激活。如果我要使用布局管理器,编写代码来安排所有内容会更麻烦,如果我要说向 JPanel 添加一个组件,事情会变得更加复杂,而不是简单地添加一些加法或减法.
因此,鉴于此,在这种情况下使用布局管理器是否有任何好处,或者一些自定义行是否更易于使用和维护?