如果滚动条可见,GXT 网格 header 宽度与内容不对齐

GXT grid header width unaligned with content if scrollbar visible

我的 gxt 网格(GXT 2.3.1,com.extjs.gxt.ui.client.widget.grid)有显示问题。它仅在存在水平和垂直滚动条时才可见:如您在屏幕截图中所见,header 右侧(滚动条上方)缺少 space。这会导致 header 与列不对齐。该问题不容易重现,并且在调整网格大小后的某个时间随机发生。

这也可以用 GXT3 重现:https://www.sencha.com/examples/#ExamplePlace:remotefiltergrid(您必须更改网格和列的大小才能重现)

问题是 GridView.calculateVBar 方法:如果没有水平滚动条,网格内容似乎可以适合滚动条。所以 gxt 认为 header 不需要垂直滚动条,右侧也不需要间隔符。但是因为有滚动条所以header显示错误。

在继承的 class 中覆盖 calculateVBar(以考虑水平滚动条高度)解决了问题。