Vaadin Grid を使用すると、編集可能として定義できます
grid.setEditorEnabled(true);
これにより、表示されているすべての列が編集可能になります。ただし、ユーザーに特定の列を編集させたくありませんが、編集可能なものはすべてかゼロかのようです。
私が見つけた次善の策は、無効なエディターでエディター フィールドを定義することです。これはほとんどトリックを行いますが、ユーザーはテキストを選択してカーソルを移動することができます (ただし、フィールドはもう編集できません)。
Grid.Column nameColumn = grid.getColumn("fullName");
nameColumn.setHeaderCaption("Full Name");
nameColumn.setEditorField(getNoEditableTextField());
...
private Field<?> getNoEditableTextField() {
TextField noEditableTextFiled = new TextField();
noEditableTextFiled.setEnabled(false);
return noEditableTextFiled;
}
Label は Field ではないため、使用できないと思います。
これを達成するためのより良いオプションはありますか?
編集: aakath が言ったように、列を編集できないようにする方法がありますが、行を編集するとセルの値が消えてしまい、望ましくありません。