以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求帮助?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81925)

--  作者:jswjyjf
--  发布时间:2016/3/8 22:28:00
--  求帮助?
帮助里有这么一段代码 不知道具体有啥用途

PrepareEdit 事件中 添加的,我试了下 添加跟不添加一样结果的,



假定不管是在录入窗口输入数据,还是在表中输入数据,只要正在编辑的是“第一列”,就自动打开下拉窗口:

If e.Col.Name = "第一列" Then
    If e.RecordGrid Is Nothing Then 
\'
如果是在表中输入数据
        If e.Col.DroppedDown = False Then
            e.Col.OpenDropDown()
        End If
    Else 
\'
如果是在记录窗口输入数据
        If e.RecordGrid .DroppedDown = False Then
            e.RecordGrid.OpenDropDown()
        End If
    
End If
End
 If


--  作者:大红袍
--  发布时间:2016/3/8 23:25:00
--  

在记录窗口录入数据的时候,也会触发prepareEdit等事件,这个  e.RecordGrid 是为了区分。

 

这段代码不是写到 prepareEdit 的,而是写到比如下面的某个事件,用来启动下拉窗口的

 

PrepareEdit 准备编辑单元格的时候执行。
StartEdit 开始编辑单元格的时候执行。
ValidateEdit 结束编辑单元格前执行,通常用于验证输入的内容
AfterEdit 结束编辑单元格后执行,通常用于执行一些特定的操作和计算
CellButtonClick 单击窗口按钮后执行,通常用于实现一些复杂的输入功能
ChangeEdit 编辑框中内容发生变化时执行
KeyPressEdit 在编辑框每输入一个字符时执行
KeyDownEdit 在编辑框中按下某一按键时执行
KeyUpEdit 在编辑框中松开某一按键时执行。


--  作者:jswjyjf
--  发布时间:2016/3/9 11:01:00
--  
在表窗口可以某列有下拉窗口,要求在记录窗口不能有,如何实现
--  作者:大红袍
--  发布时间:2016/3/9 11:26:00
--  

prepareEdit

 

If e.Col.Name = "第一列" Then
    If e.RecordGrid Is Nothing Then \'如果是在表中输入数据
        e.Col.DropForm  = "窗口1"
    Else \'如果是在记录窗口输入数据
        e.Col.DropForm  = Nothing
    End If
End If