在DW中按下左右光标时切换到相邻单元格

来源:互联网 发布:c语言考试题及答案 编辑:程序博客网 时间:2024/06/04 19:46


首先声明外部函数:

 Subroutine keybd_event(int bVk,int bScan,ulong dwFlags,ulong dwExtraInfo) LIBRARY "user32.dll"

 一、如果不想在DW的单元格内利用左右键编辑内容,只要一按下左右键就切换到其他单元格的话可以:

 新建ue_key 对应 pbm_dwnkey ,代码如下:

 if key=keyleftarrow! then

    keybd_event(16,0,0,0)   //按下SHIFT键

    keybd_event(9 ,0,0,0)   //按下下TAB

    keybd_event(9 ,0,2,0)   //放开TAB键

    keybd_event(16,0,2,0)   //放开SHIFT键

    return 1

elseif key=keyrightarrow! then

    keybd_event(9 ,0,0,0)   //按下下TAB

    keybd_event(9 ,0,2,0) //放开TAB键

    return 1

end if

 二、如果还想在DW的单元格内利用左右键编辑内容,只在空或者全选时按下左右键才切换到其他单元格的话可以:

新建ue_key 对应 pbm_dwnkey ,代码如下:

integer li_len,li_len_selected

li_len=len(this.gettext())

li_len_selected=len(this.SelectedText())

if not (isnull(this.gettext()) or this.gettext()="" or li_len=li_len_selected) then return

 if key=keyleftarrow! then

     keybd_event(16,0,0,0)   //按下SHIFT键

     keybd_event(9 ,0,0,0)   //按下下TAB

     keybd_event(9 ,0,2,0)   //放开TAB键

     keybd_event(16,0,2,0)   //放开SHIFT键

     return 1

elseif key=keyrightarrow! then

     keybd_event(9 ,0,0,0)   //按下下TAB

     keybd_event(9 ,0,2,0) //放开TAB键

     return 1

end if


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zm1313/archive/2006/04/04/650369.aspx

原创粉丝点击