1

GWT でスライダー ベースのコンポーネントを作成しています。

Parent : width = 100%
.-------------------------------------------------.
| .---------------------------------------------. |
| |     Child : width = X                       | |
| '---------------------------------------------' |
'-------------------------------------------------'

どこで X = (ピクセル単位の親の幅) - (ランタイムに基づく一部の計算);

私のコードは言う:

int providedWidth = parentContainer.getOffsetWidth();

Firefox では、(たとえば) 345px として正しく幅を取得しますが、IE6 では、サイズに関係なく常に幅を 0 として返します。

GWT の観点から見ると、Parent は DockPanel (スーパー ペアレント) 内に配置された AbsolutePanel であり、Child は Horizo​​ntalPanel です。

簡潔にするためにここにコードを配置していません。幅を取得する他の方法はありますか、それとも何か間違っていますか?

4

2 に答える 2

3

大雑把な推測ですが、IE6 では要素に「レイアウト」が必要なのでしょうか? あなたはそれを与えることができますstyle='zoom:1'か?

于 2009-11-23T13:03:20.333 に答える
2

IE では、イベント スレッドが完了した後にのみレイアウトを行うため、DeferredCommand でサイズ情報を取得する必要がある場合があります。

于 2009-11-23T13:57:29.263 に答える