0

シートの名前を表示する vaadin-spreadsheet タブで編集可能です。読み取り専用にしたい。写真を参照してください。助言がありますか?Spreadsheet.lockActiveSheet() API を試しましたが、機能しません

現在編集可能なスプレッドシート タブ

4

1 に答える 1

1

免責事項:これはコメントとして適していますが、最大長を超えています...


Excel では、現在のシートを保護しても名前の変更は妨げられません。ただし、ワークブックを保護すると機能しますが、追加、削除なども防止されることに注意してください。

Vaadin の実装は Apache POI に依存しているため、ロックされた構造を持つ XSSFWorkbook をSpreadsheet コンストラクターに渡してみることができます。

それにもかかわらず、ソースを見ると、setWorkbookProtected()メソッドはシート全体を読み取り専用に設定しているようですが、この商用アドオンのライセンスを持っていないため、この仮定を検証できません (テスト キーは既に期限切れです)。 )。

public void setWorkbookProtected(boolean workbookProtected) {
    sheetTabSheet.setReadOnly(workbookProtected);
}

全体として、これを行うための専用の方法や簡単な回避策はないと思います。

于 2016-07-11T12:09:32.447 に答える