1

intger、decimalなどのeditableNumbercellを使用したいのですが、そのようなgwtウィジェットが存在しないため、編集可能なテキストセルを使用し、ユーザーがセルの値を更新するときに数値の検証を使用しています。

検証が失敗したときにセルの編集を回避する方法。

検証に失敗した場合、編集可能なテキストセルの値が古い値に復元されます。その方法は?

intgerColumn.setFieldUpdater(new FieldUpdater<RecordInfo, String>() {
        public void update(int index, RecordInfo object, String value) {
            // Called when the user changes the value.
            if(value.matches("(-)?(\\d){1,8}")){
                object.setColumnInRecordEdited(true);
                object.setValue(value);
                RecordData.get().refreshDisplays();
            }else{
                Window.alert("Specify valid integer value for parameter");
                // How to rest old value here? currently update value set to cell

            }

        }
    });

この件に関するヘルプやガイダンスをいただければ幸いです。

4

1 に答える 1

1

あなたはこのようにそれを行うことができます:

//不正なデータをクリアしますcell.clearViewData(KEY_PROVIDER.getKey(object)); cellTable.redraw();

ここで、cellは、その列に使用しているTextEditCellです。

それは私にとって便利です。

于 2011-08-09T05:39:58.497 に答える