スプレッドのセル編集時にEnterキーのイベントを取得し、別の処理を行う

'フォームロードイベント
Private Sub Form1_Load(sender As Object, e As System.EventArgs)
	fpSpread1.EditModePermanent = True
	' 編集中セルの Enterキー押下による動作を無効とします。
	Dim inputmap1 As FarPoint.Win.Spread.InputMap
	inputmap1 = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused)
	inputmap1.Put(New FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.None)
End Sub
'スプレッドの編集開始イベント
Private Sub fpSpread1_EditModeOn(sender As Object, e As System.EventArgs)
	' 編集モードONの時、KeyDownイベントを取得する
	fpSpread1.EditingControl.KeyDown += New System.Windows.Forms.KeyEventHandler(AddressOf Me.fpSpread1_KeyDown)
End Sub
'スプレッドの編集終了イベント
Private Sub fpSpread1_EditModeOff(sender As Object, e As System.EventArgs)
	' 編集モードOFFの時、KeyDownイベントの関連付けを解除
	fpSpread1.EditingControl.KeyDown -= New System.Windows.Forms.KeyEventHandler(AddressOf Me.fpSpread1_KeyDown)
End Sub
'キーダウンイベント
Private Sub fpSpread1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs)
	If e.KeyCode = Keys.Enter Then
		Console.WriteLine("EnterキーによるKeyDown")
	End If
End Sub

  


标签: spread
posted @ 2011-12-26 12:53 sekihin 阅读(23) 评论(0) 编辑 收藏
Creative Commons License 本作品采用 知识共享署名-非商业性使用 2.5 中国大陆许可协议进行许可。