1

アプリケーションの UI バグを修正していますが、DynamicForm で複数の SelectItem の問題が発生しています。

ご存知のように、pickList の幅が設定されていない場合、SmartGwt は pickList の幅をコンテンツに合わせて調整します。問題は、ある SelectItem のコンテンツが他のコンテンツよりも広い場合です。たとえば、2 つの SelectItem があり、最初の SelectItem のコンテンツの幅が 2 番目の SelectItem よりも小さいとします。この問題を再現する手順:

  1. 最小幅のコンテンツで最初の SelectItem を開きます - pickList の幅はコンテンツと同じです
  2. 2 番目の SelectItem を前のものよりも大きいコンテンツで開きます - pickList の幅はコンテンツと同じです
  3. 最初の SelectItem を再度開きます - pickList の幅は 2 番目の SelectItem の pickList と同じになります

問題は、SmartGwt に各 SelectItem の pickList の幅を個別に再計算させる方法です。

いくつかのコード例:

// Constructor of our DynamicForm
public PriceItemFilterForm(DataSource datasource) {

    // SelectItem with content with the smallest width
    SelectItem priceItemType = new SelectItem(PRICE_ITEM_TYPE_NAME,
            toolMessages.priceItemTypeFilterTitle());

    // Second SelectItem with content with bigger with than previous one
    SelectItem evalTimeType= new SelectItem(EVAL_TIME_NAME,
            toolMessages.evaluationTimeFilterTitle()){
        @Override
        protected String getLocalizedMessage(String text) {
            return toolConstants.getString(text);
        }
    };
    evalTimeType.setStartRow(true);

    setFields(priceItemType, evalTimeType);
}

回答ありがとうございます。

4

1 に答える 1

1

2.5 smart gwt バージョンにアップグレードしました。そして、同じエラーが発生しました。3.0 Smart GWT にアップグレードしたところ、問題が修正されました。

于 2012-10-15T19:02:37.113 に答える