1

相対的なサイズパラメータを持つスクロールパネルを作成しようとしています。ただし、ScrollPanel.setSize(String, String)によって返されるようなint値がある場合、この関数を操作することはできませんWindow.getHeight

試しScrollPanel.setSize("100%", "150px");てみると、スクロールパネルの高さは変更されず、代わりにデフォルトが使用されます。どんな助けでもいただければ幸いです。

4

3 に答える 3

2

[ScrollPanel] [1]のGWTドキュメントによると、相対的なCSS単位ではなく絶対的なCSS単位で幅を使用することについてはかなり厳格なようです。したがって、問題は「100%」パラメータにある可能性があります。

[1]: http: //google-web-toolkit.googlecode.com/svn/javadoc/1.5/com/google/gwt/user/client/ui/ScrollPanel.html#setSize (java.lang.String 、java。 lang.String)

于 2009-08-28T19:31:18.700 に答える
0

高さでできるかどうかはわかりませんが、幅でうまくいったのは、最初に任意の幅を設定し、次に要素を取得してwidthプロパティを設定することでした。

ScrollPanel myScrollPanel = new ScrollPanel();
myScrollPanel.setSize("2112px", "150px");   // Arbitrary width.
myScrollPanel.getElement().getStyle().setProperty("width", "100%");  // or "auto"

これがあなたのために働くことを願っています(あなたはこれを5年前に尋ねたので、あなたはおそらくもうそれについてあまり心配していません)!

于 2014-08-06T22:42:37.970 に答える
0

ここから私の答えをコピーする:相対的なサイズでScrollPanelを使用する方法

================================================== ================

まず、ScrollPanelは、理由がわからないため、他のウィジェットとして機能しないものです。相対サイズ(50%)を設定できません。スタイルを指定すると、どこかで失われ、ページから見つかりません。

私の解決策は、ResizeLayoutPanelを使用することです。Andreiは、ProvidesResizeを使用することを提案しましたが、provide / require resizeチェーンが壊れていないことを要求します。これは、非常に注意が必要な場合があります。このResizeLayoutPanelは、「1つの子にResizeを提供しますが、RequiresResizeは必要ありません」を見つけました。これは、コンポジットのルートパネルの最適な候補です。次に、親のResizeLayoutPanelによって呼び出されるたびに、「onResize」メソッドでScrollPanelを拡張してサイズを変更します。

私の最初の質問に対する答えはまだありません:ScrollPanelによって、そもそもこのように動作しますか?私はそのソースコードで答えを見つけようとしましたが、成功しませんでした(ソースコードの研究に十分な時間を費やしていませんでしたが)。

public class My100PctScrollPanel extends ScrollPanel {
    @Override
    public void onResize() {
        // Window.alert("on resize"); 
        this.setWidth(this.getParent().getOffsetWidth()+"px");
        this.setHeight(this.getParent().getOffsetHeight()+"px");
        super.onResize();
    }
}

........

compositeRoot = new ResizeLayoutPanel();  

........
scrollPanel = new My100PctScrollPanel();
compositeRoot.clear();
compositeRoot.add(scrollPanel);
于 2016-12-15T03:32:27.427 に答える