0

Create field vaadin テーブルに問題があります。テキストを入力できるテーブル内のフィールドを定義する必要があります。そのため、Create フィールドでは、新しい行がこのフィールドに集約されるたびにフォーカスが必要になるため、次のようなことを行いました。

public Field createField(Container container, Object itemId,
                Object propertyId, Component uiContext) {
            final TextField f=new TextField();      
            f.setVisible(true);

            f.addStyleName("txtronly-textfield");
            if((propertyId=="Cantidad"))
            {

                f.setStyleName("centerTxt");
                f.setReadOnly(true);
                f.setRequired(true);
                f.setMaxLength(9);
                f.focus();
            }
            return f;
}

アイテムを挿入するときに addItemAt (0, item) を使用して一番上に挿入しますが、フォーカス フィールドはテーブルの最後です。誰かが助けてくれれば、なぜこれが起こるのかわかりませんか?

4

1 に答える 1

0

ifステートメントが真になることはないため、ifブロック内のコードは実行されません。文字列は常にequalsメソッドと比較してください。

次のことを試してください。

if((propertyId.equals("Cantidad")))
        {
            ...
        }
于 2012-10-27T11:09:24.720 に答える