0

私は Ext JS 4 を初めて使用し、固定列を持つ Panel を作成しました。ある種のバグがあるようです (いくつかのフォーラムで読んだように)、列を修正すると、スペーサー(xtype: tbspacer) が自動的にその上部に挿入され、テーブルの配置が台無しになります (問題がある場合)設定を教えてください)。私がやりたいのは、そのスペーサーを取り除くことです。

これを行うには、それを選択する必要がありますが、「静的」ID がありません。つまり、ビューに変更を加えると、スペーサーは別の ID を取得するため、それを選択する方法が必要です。 IDを利用しています。私はこのようなことを試みました:

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

listパネルはどこですか。しかし、うまくいかないようです。list.query()メソッドは空の配列を返します。textfieldを選択しようとすると、同じ問題が発生します。

何か足りないのですか、それとも別のバグですか?

これは、ロックされた列を作成する方法です(特別なものはありません):

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

編集ここにもスクリーンショットがあります:

ここに画像の説明を入力

EDITそのスペーサーはそもそも存在すべきではありませんでした.それはフレームワークのそのバージョンにありました(おそらくまだありますか?)。ここで私の他の質問を参照してください。この質問で言及されている問題を修正しているように見えるため、ここで唯一の回答を承認済みとしてマークします。

4

1 に答える 1

1

まず、間違ったクエリを実行しています。tbspacerドットなしのだけである必要があります。第二に、代わりにsetHeight(0)、なぜそれだけではないのdestroyですか?

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