0

css でパネルのマージンを設定しました。ここで、GWT でマージン幅を取得する必要があります。どうすればこれを行うことができますか? たとえば、パネルの CSS スタイルを設定します。

   <ui:binder>
  .panel{
   margin: 5px;
   }


  <g:HTMLPanel Ui:field=myPanel styleName="{style.panel}" />   
  </ui:binder>

GWT 2.4 では、GWT クラスでマージン値 (5px) を取得するにはどうすればよいですか。DOM.getIntStyleAttribute(myPanel.getElement(), "margin")、DOM.getIntStyleAttribute(myPanel.getElement(), "marginWidth")、および myPanel.getElement().getStyle().getMargin() にうんざりしています。これらはすべて 0 を返します。

マージン幅を取得するにはどうすればよいですか?

返信ありがとうございます。

よろしく

4

1 に答える 1

3

計算されたスタイルを探していますが、要素スタイルを要求しています。

要素にスタイル属性を直接設定する場合は、試したように要素のマージンを照会できます。

<!-- style can only be set on html elements, not widgets -->
<div ui:field="divElement" style='margin:5px'></div> 

divElement.getStyle().getMargin();

私が見つけたものから、GWT は計算されたスタイルを検索する方法を提供していません。代わりに、外部ライブラリに依存する必要があります。を簡単に Google 検索gwt computed styleすると、いくつかのオプションが表示されます。


または、余白の幅を GWT CSS 定数として定義し、CssResource を使用してそれにアクセスすることもできます。

MyPanel.ui.xml

<ui:style field="style" type="com.myproject.client.MyPanel.MyStyle">
  @def marginWidth 5px;
  .panel{ margin: marginWidth; }
</ui:style>

MyPanel.java

@UiField MyStyle style;

interface MyStyle extends CssResource {
  String marginWidth();
}
于 2012-05-10T17:41:40.580 に答える