From ee82bedabe5ea41a4117a9a45daf3b4fa4a3f126 Mon Sep 17 00:00:00 2001 From: tianmo Date: Fri, 16 Oct 2026 17:19:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=89=E6=AE=B5=E9=83=BD=E5=8A=A0=20expand?= =?UTF-8?q?=EF=BC=88=E7=94=A8=E6=88=B7=E7=82=B9=E5=90=8D=EF=BC=89=EF=BC=9A?= =?UTF-8?q?=E5=90=83=E6=8E=89=E5=81=9C=E9=9D=A0=E6=A1=86=E5=89=A9=E4=BD=99?= =?UTF-8?q?=E7=A9=BA=E9=97=B4=EF=BC=8C=E6=B6=88=E6=8E=89=E5=BA=95=E9=83=A8?= =?UTF-8?q?=E7=A9=BA=E5=B8=A6=EF=BC=9B600:1400:400=20=E7=9A=84=E6=AF=94?= =?UTF-8?q?=E4=BE=8B=E4=BB=8D=E4=BD=9C=E4=B8=BA=E5=90=84=E6=AE=B5=20pref?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- viewpanel/src/com/spineview/ObjectPanel.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/viewpanel/src/com/spineview/ObjectPanel.java b/viewpanel/src/com/spineview/ObjectPanel.java index c09aa71..d375fe6 100644 --- a/viewpanel/src/com/spineview/ObjectPanel.java +++ b/viewpanel/src/com/spineview/ObjectPanel.java @@ -134,7 +134,8 @@ public final class ObjectPanel { layoutCell(nameCell, Obf.CELL_LEFT); // 上段:按钮块(自适应高度,紧贴顶部) Object cell = call(root, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, buttons); - layoutCell(cell, Obf.CELL_LEFT, Obf.CELL_FILL_X); + // expand:吃掉停靠框里"没人要"的那部分空间(用户点名要的),否则底部会留一条空带 + layoutCell(cell, Obf.CELL_LEFT, Obf.CELL_FILL_X, Obf.CELL_EXPAND); final Object buttonsCell = cell; call(root, Obf.TABLE_ROW, new Class[0], cellClass); // 上/中/下 = 根表格的**三个单元格**(这样 setDebug 画出来就是三条带): @@ -145,7 +146,7 @@ public final class ObjectPanel { cell = call(root, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, scroll); // 中段 = 列表,是**最长的一段**:只用固定高度,**不用 expand**(用户明确不要)。 // 纵向拉伸用已验证的 fillY=`L`(Cell.fill() 的载荷名 `D` 在 Cell 上有多个同名无参方法,会取错)。 - layoutCell(cell, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_FILL_Y); + layoutCell(cell, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_FILL_Y, Obf.CELL_EXPAND); try { // 中段固定高度:Cell.height(float) 在载荷里叫 `I`(实测确认:设 900 -> 根表格 580->1080) call(cell, "I", new Class[] {float.class}, cellClass, Float.valueOf(700f)); @@ -157,7 +158,7 @@ public final class ObjectPanel { call(root, Obf.TABLE_ROW, new Class[0], cellClass); Object logCell = call(root, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, state.status); // 下段 = 日志:只占它需要的高度(1~6 行),贴在面板最下面 - layoutCell(logCell, Obf.CELL_LEFT, Obf.CELL_FILL_X); + layoutCell(logCell, Obf.CELL_LEFT, Obf.CELL_FILL_X, Obf.CELL_EXPAND); // 中段高度固定:Cell.height(float) 在载荷里叫 `I`(描述符 (F)LdR;) // 实测确认:设 900 后根表格高度 580 -> 1080,说明它就是 height()。 try {