0

我对 Ext JS 4 很陌生,我创建了一个带有固定列的面板。似乎存在某种错误(如在某个论坛上阅读的那样),如果我修复了一个列,则会在其顶部自动插入一个分隔符(xtype:tbspacer),从而破坏表格的对齐方式(如果这只是一个不好的问题配置,请告诉我)。我想做的是移除那个垫片。

为了做到这一点,我必须选择它,但它没有“静态”id,这意味着如果我对视图进行任何修改,spacer 会获得另一个 id,所以我需要一个方法来选择它而不使用 id。我试过做这样的事情:

list.query('.tbspacer')[0].setHeight(0);

list面板在哪里。但这似乎不起作用。该list.query()方法返回一个空数组。尝试选择textfield时遇到同样的问题。

我错过了什么,还是只是另一个错误?

这就是我创建锁定列的方式(没什么特别的):

{
  header: headerName, 
  dataIndex: i, 
  locked: true
}

编辑这里也是一个截图:

在此处输入图像描述

编辑那个垫片本来就不应该存在,它是(也许仍然是?)在那个版本的框架中。在这里查看我的另一个问题。我会将此处唯一的答案标记为已接受,因为它似乎可以解决此问题中提到的问题。

4

1 回答 1

1

首先,您正在执行错误的查询。它应该是 just tbspacer,没有点。其次,而不是setHeight(0),为什么不只是destroy它?

list.query('tbspacer')[0].destroy();
于 2012-06-27T14:29:07.463 回答