PowerTools SPREAD for Windows Forms 8.0J > 開発者ガイド > キーボード操作 > 入力マップのカスタマイズ |
コントロールのアクションに、既定で割り当てられているキーを使用できます。既定のキーの割り当てをカスタマイズし、任意のキー、またはキーの組み合わせを、任意のアクションに割り当てられます。まずは、「キーボードマップに関する要素」を参照してください。
キー、またはキーの組み合わせを割り当てることができるアクションは、SpreadActionsクラスのフィールドとして定義されています。
既定の入力マップでは「既定の入力マップ」に記載されたキー入力およびアクションが割り当てられています。入力マップは操作モードごとに、フォーカス位置に応じて定義されています。入力マップをカスタマイズするには、操作モードに対応した適切な入力マップを設定するよう注意してください。
[プロパティ]ウィンドウまたはSPREADデザイナで入力マップをカスタマイズすることはできません。 |
次のサンプルコードは、既定の操作モード(標準モード)の入力マップをカスタマイズします。フォーカスがセルのエディタにある状態(セルが編集中)を表すWhenAncestorOfFocused入力マップ、およびフォーカスがコントロールにある状態(セルは非編集状態)を表すWhenFocused入力マップをカスタマイズします。いずれの状態でも[Enter]キーによってアクティブセルが次の行に移動するように設定します。
C# |
コードのコピー
|
---|---|
// InputMapオブジェクトを作成します。 FarPoint.Win.Spread.InputMap inputmap1; // 既存のマップにこのInputMapオブジェクトを割り当てます。 inputmap1 = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused); // [Enter]キーをマップします。 inputmap1.Put(new FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToNextRow); // 別のInputMapオブジェクトを作成します。 FarPoint.Win.Spread.InputMap inputmap2; // 既存のマップにこのInputMapオブジェクトを割り当てます。 inputmap2 = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused); // [Enter]キーをマップします。 inputmap2.Put(new FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToNextRow); |
Visual Basic |
コードのコピー
|
---|---|
' InputMapオブジェクトを作成します。 Dim inputmap1 As New FarPoint.Win.Spread.InputMap() ' 既存のマップにこのInputMapオブジェクトを割り当てます。 inputmap1 = FpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused) ' [Enter]キーをマップします。 inputmap1.Put(New FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToNextRow) ' 別のInputMapオブジェクトを作成します。 Dim inputmap2 As New FarPoint.Win.Spread.InputMap() ' 既存のマップにこのInputMapオブジェクトを割り当てます。 inputmap2 = FpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused) ' [Enter]キーをマップします。 inputmap2.Put(New FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToNextRow) |