0

GridPanel が正しくレンダリングされない

動的に生成された Web ページで EditorGridPanels を使用しています。ExtJS は ViewPort を制御しません。

Ext.onReady() でグリッド生成コードをラップすると、グリッドは完全にレンダリングされます。Ext.onReady() でラップしないと、次のような微妙なレイアウトの問題でレンダリングされます

  • グリッドが少し広すぎる
  • 上部のツールバーが右側で切り取られます
  • 行がうまく収まらず、セルをクリックすると移動します

ページが読み込まれると、グリッドのレイアウトが再計算されるように強制しようとしました...

(function(){}
   var grid = ...
   [ ... ]
   Ext.onReady(function(){
      grid.doLayout();
   });
)();

...しかし、これは機能しません。

Ext.onReady() 内に Grid の初期化を配置することを避けようとしている理由は、ページがすべてのリソースを完全にロードするのに時間がかかる場合があるためです。にレンダリング!

私が試すかもしれないことについて何か提案はありますか?現在、ページの完全な再設計は範囲外であるため、onReady() 内で初期化されたときのようにグリッドをレイアウトするためにできることを探しています!

ありがとう

4

1 に答える 1

0

おそらく、最初に「loading ..」メッセージでページをマスクし、onReady()でこれを削除することができます。

onReadyの外部で問題が発生している場合は、コンポーネントをレンダリングしようとしているときに何かがロードされていないことを示します。これは、私の経験では、今後さらに問題が発生する可能性があります。

于 2012-09-21T11:42:27.733 に答える