找回密码
 立即注册

QQ登录

只需一步,快速开始

Soft_Killer

注册会员

9

主题

35

帖子

199

积分

注册会员

积分
199

活字格认证微信认证勋章

Soft_Killer
注册会员   /  发表于:2014-6-5 19:49  /   查看:5847  /  回复:3
Spread 编辑模式下想让Tab、Enter键按下时焦点移动到下一控件,Shift+Tab、Shift+Enter键焦点移动到上一控件,要怎样实现?
如下图:
2014-06-06_083835.png
代码参见附件
test001.zip (87.08 KB, 下载次数: 444)

3 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-6-6 14:16:00
沙发
回复 1楼Soft_Killer的帖子

需要设置相应的快捷键的动作 SpreadAcions.None,请使用以下代码测试:

  1.     Private Sub FpSpread1_KeyDown(sender As Object, e As KeyEventArgs) Handles FpSpread1.KeyDown

  2.         Me.TextBox1.Focus()

  3.     End Sub

  4.     Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  5.         Dim keymap As New FarPoint.Win.Spread.InputMap()
  6.         keymap = Me.FpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused)
  7.         keymap.Put(New FarPoint.Win.Spread.Keystroke(Keys.Tab, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToFirstColumn)
  8.         keymap.Put(New FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.MoveToFirstColumn)
  9.     End Sub
复制代码
回复 使用道具 举报
Soft_Killer
注册会员   /  发表于:2014-6-6 16:12:00
板凳
回复 2楼iceman的帖子

不过因为我的代码设置了EditModePermanent = True,焦点在Checkbox上,稍微改下
keymap = Me.sprHiketu.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused)
问题解决,十分感谢!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-6-6 18:11:00
地板
回复 3楼Soft_Killer的帖子

不客气,先关闭帖子了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部