找回密码
 立即注册

QQ登录

只需一步,快速开始

shiyi9012

注册会员

8

主题

23

帖子

93

积分

注册会员

积分
93
shiyi9012
注册会员   /  发表于:2020-3-30 16:52  /   查看:2981  /  回复:5
因为在cellValueChanged里会监控xcv的输入,监控到后会设定一些指定值。就导致和ctrl+c等快捷键会有冲突,导致按下的时候会同时执行复制和c对应的操作。
在属性列表里看到有editorkeydown的方法,但没有up的方法。
我的想法是在编辑模式下,ctrl按下后设一个flag为true,up时为false,在cellValueChanged判断falg状态再执行事件,有办法实现吗。

5 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-3-30 17:28:29
沙发
没有特别懂,按下x会做一些事,但是按ctrl时候不做,是这样吗?
时间里判断下是否同时按下了ctrl就可以了吧?
如果不是请提供个Demo详细再说下
回复 使用道具 举报
shiyi9012
注册会员   /  发表于:2020-3-31 08:53:23
板凳
事件是CellValueChanged
这里面没有按键的事。
执行事件是通过输入的值执行的,并不是按下键盘这个动作。
有办法在这个事件里判断有没有按下ctrl吗
回复 使用道具 举报
shiyi9012
注册会员   /  发表于:2020-3-31 09:02:18
地板
本帖最后由 shiyi9012 于 2020-3-31 09:11 编辑

希望是这样的,这个在编辑模式中没有按住ctrl的条件该怎么写.
sub CellValueChanged
      if 没有按住ctrl
         if 输入了x
             执行一些动作         end if
      end if
end sub
回复 使用道具 举报
shiyi9012
注册会员   /  发表于:2020-3-31 09:33:50
5#
本帖最后由 shiyi9012 于 2020-3-31 10:08 编辑

    If ModifierKeys = Keys.Control可以判断。
但即使判断了也没法停下后面的操作。因为这个是输入后执行的事件,但ctrl需要执行事件之前就判断。
有没有办法让ctrl在编辑模式下按住时禁止键盘输入,但不妨碍剪切板?
有好办法的话说一下,我自己也先再研究研究

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-3-31 14:38:12
6#
本帖最后由 dexteryao 于 2020-3-31 14:40 编辑

正常按住ctrl再按c是不会输入的,您再测试下,如果还不行,发个详细的需求说明和Demo,我们再看下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部