SpreadJS製品ヘルプ
編集モードと入力モード
SpreadJS > 開発者の手引き > 機能 > ユーザーインタフェースの管理 > 編集モードと入力モード

編集モードのシート上では、矢印キーを使用してセル間を移動できます。

エディタが編集モードでない場合、ステータスは「Ready(コマンド)」です。 エディタが編集モードのときは、ステータスは「Enter(入力)」または「Edit(編集)」となります。

入力モードでは、ユーザーが移動または選択を実行すると、現在の入力が確定されて移動または他のセルの選択が行われます。 編集モードでは、ユーザーが移動または選択を実行すると、現在の入力は確定されずに、移動または他のセルの選択が行われます。

空白セルに値を入力するか、ダブルクリックすると、このセルは入力モードに切り替わります。 空白以外のセルをダブルクリックすると、このセルは編集モードに切り替わります。 入力モードのセルで、マウスの左ボタンを使用してエディタをクリックすると、ステータスが編集モードに変わります。 startEditメソッドを使用すると、ダブルクリックと類似の効果が得られます。

編集モードかどうかを調べるには、editorStatus型を使用します。

コードの使用

次のサンプルコードは、エディタのステータスを表示します。

JavaScript
コードのコピー

<script type="text/javascript">
     window.onload = function () {
         var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
         var activeSheet = spread.getActiveSheet();

spread.commandManager().register("startEditing", {
             canUndo: false,
             execute: function (context, options) {
                 var sheet = context.getSheetFromName(options.sheetName);
                 if (sheet && !sheet.isEditing()) {
                     sheet.startEdit();
                 }
             }
         }, 113, false, false, false, false);

        setstatus(activeSheet);
         activeSheet.bind(GC.Spread.Sheets.Events.EditorStatusChanged,function(e,args){
             setstatus(activeSheet, args.status);
         });
     }

    function setstatus(activeSheet,status) {
         var statusnow = status || activeSheet.editorStatus();
         if (statusnow === GC.Spread.Sheets.EditorStatus.ready) {
             $("#status").text("Ready");
         } else if (statusnow === GC.Spread.Sheets.EditorStatus.enter) {
             $("#status").text("Enter");
         } else if (statusnow === GC.Spread.Sheets.EditorStatus.edit) {
             $("#status").text("Edit");
         }
     }
 </script>

// これにより、「status」ラベルが作成されます
 <label id="status" style="margin: 10px">

関連トピック