以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  光标保留  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102005)

--  作者:wei0769
--  发布时间:2017/6/11 18:35:00
--  光标保留

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170611183340.png
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2017/6/11 18:52:00
--  

 不能写datacolchanged事件,你要去写validateEdit事件

 

http://www.foxtable.com/webhelp/scr/0617.htm

 


--  作者:wei0769
--  发布时间:2017/6/11 20:26:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170611202521.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2017/6/12 8:42:00
--  
设置了e.Cancel=true,单元格不能离开焦点,还是在编辑状态,无法设置其内容的。

试试DataColChanging事件

If e.DataCol.Name = "第四列" Then 
    If e.NewValue > "" Then \'如果已经输入内容
        Dim v As Double = Val(e.NewValue ) \'将输入的内容转换为数值
        If v > 0.15 Then \'如果输入的值大于0.15
            e.NewValue  = Nothing
            Messagebox.Show("错误!")
            \'e.Cancel = True \'则禁止退出编辑模式
            CurrentTable.Select(CurrentTable.RowSel,CurrentTable.ColSel-1)
        End If
    End If
End If

--  作者:有点色
--  发布时间:2017/6/12 9:01:00
--  

 要这样写

 

e.cancel = True
Sendkeys.SendWait("^A")
Sendkeys.SendWait("{del}")


--  作者:wei0769
--  发布时间:2017/6/12 11:37:00
--  
4楼测试可以达到目标  谢谢!

5楼中的  ^A 表示什么意思,帮助中找不到

--  作者:有点色
--  发布时间:2017/6/12 11:40:00
--  
以下是引用wei0769在2017/6/12 11:37:00的发言:
4楼测试可以达到目标  谢谢!

5楼中的  ^A 表示什么意思,帮助中找不到

 

模拟按下 ctrl+A 的意思

 

http://www.foxtable.com/webhelp/scr/0354.htm

 


--  作者:wei0769
--  发布时间:2017/6/12 11:45:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2017/6/12 12:11:00
--  
 3楼的代码,加上5楼的代码,我测试没问题。
--  作者:wei0769
--  发布时间:2017/6/12 12:26:00
--  

这样测试,也是没有问题,原来我只是一步一步这样测试,直接按 ctrl + A 变成了增加行

谢谢