找回密码
 立即注册

QQ登录

只需一步,快速开始

fzslai

高级会员

4

主题

11

帖子

1392

积分

高级会员

积分
1392

活字格认证

fzslai
高级会员   /  发表于:2014-1-13 11:05  /   查看:6167  /  回复:4
在WinForm中,如何实在Spread中 按Tab键聚焦页面上的其它控件?

我用了   protected override bool ProcessCmdKey 来捕获,但是效果不是很好?有没有其它解决办法

4 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2014-1-13 16:50:00
沙发
回复 1楼fzslai的帖子

没有太理解您的意思,我的理解是:连续按Tab健,focus是变化的,即会移动到其他控件上的。

您先参考一下:
这里有个双击单元格,setfcus为TextBox控件的帖子:http://gcdn.grapecity.com/showtopic-11570.html
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-1-22 12:08:00
板凳
回复 1楼fzslai的帖子

需要把tab健默认的事件(MoveToNextColumnWrap)取消.

这段代码可试试:
  1.   FarPoint.Win.Spread.SheetView shv = fpSpread1.ActiveSheet;
  2.             FarPoint.Win.Spread.InputMap im = new FarPoint.Win.Spread.InputMap();
  3.             FarPoint.Win.Spread.Keystroke k = new FarPoint.Win.Spread.Keystroke(Keys.Tab, Keys.None);
  4.            
  5.             im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
  6.             im.Put(k, SpreadActions.None);

  7.             im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused);
  8.             im.Put(k, SpreadActions.None);
复制代码
回复 使用道具 举报
senyugo
银牌会员   /  发表于:2014-1-22 14:19:00
地板
回复 3楼roger.wang的帖子

我要的就是这段,谢谢
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-1-22 15:27:00
5#
回复 4楼senyugo的帖子

嘻嘻,不客气。

也非常欢迎您在有空的时候,把知识分享给其他用户--如论坛中提问的帖子,届时,我们会有礼品送上。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部