以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  窗口与表格  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=42757)

--  作者:653006728
--  发布时间:2013/11/21 10:50:00
--  窗口与表格
当我打开项目窗口的时候   如果后台显示的表格 不是窗口内容所绑定的表格,那么窗口的一系列操作讲不能输入到绑定表格  而是输入到了当前后台所显示的表格    这个问题要怎么解决?
--  作者:Bin
--  发布时间:2013/11/21 10:51:00
--  
不是很理解你的意思, 你是指控件绑定的是窗口表,然后主表不会同步更新吗?

能否上个例子展示一下你的问题呢?

--  作者:653006728
--  发布时间:2013/11/21 10:54:00
--  

像图片上面一样     当我向员工信息表里面输入内容的时候  他的内容却不是输入到员工信息表   而是到了后面的快递信息里面去了


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

--  作者:Bin
--  发布时间:2013/11/21 10:56:00
--  
不可能的,上例子.
--  作者:653006728
--  发布时间:2013/11/21 11:00:00
--  

之前用的代码是  currenttable。datatable。我代码改过来又可以了 但是感觉好麻烦  

 

 

If CurrentTable.DataTable.Name = "员工信息表" Then
    If Tables("员工信息表").Current.IsNull("姓名") Then
        CurrentTable.Current.delete
    Else  If Tables("员工信息表").Current.IsNull("身份证号") Then
        CurrentTable.Current.delete
    Else  If Tables("员工信息表").Current.IsNull("部门") Then
        CurrentTable.Current.delete
    Else If Tables("员工信息表").Current.IsNull("职称") Then
        CurrentTable.Current.delete
    Else  If Tables("员工信息表").Current.IsNull("家庭住址") Then
        CurrentTable.Current.delete
    End If
Else
    If Tables("员工信息表").Current.IsNull("姓名") Then
        Tables("员工信息表").Current.Delete
    Else  If Tables("员工信息表").Current.IsNull("身份证号") Then
        Tables("员工信息表").Current.Delete
    Else  If Tables("员工信息表").Current.IsNull("部门") Then
        Tables("员工信息表").Current.Delete
    Else If Tables("员工信息表").Current.IsNull("职称") Then
        Tables("员工信息表").Current.Delete
    Else  If Tables("员工信息表").Current.IsNull("家庭住址") Then
        Tables("员工信息表").Current.Delete
    End If
End If


--  作者:Bin
--  发布时间:2013/11/21 11:01:00
--  
那是因为当前表并不是员工 信息表,  当然要指定表才可以了.否则填到哪里去,是看当前表是那个的.
--  作者:653006728
--  发布时间:2013/11/21 11:03:00
--  
是不是每一个填入窗口都要指定表明呢?  感觉好麻烦
--  作者:Bin
--  发布时间:2013/11/21 11:05:00
--  
是的
--  作者:狐狸爸爸
--  发布时间:2013/11/21 11:59:00
--  

针对指定表操作的代码,最好不要用CurrentTable,而是Tables("表名"),如果在表事件中,应该e.DataTable或e.Table。

CurrentTable是当前表,并非一定就是触发事件的表。

 

切记切记,很多老手都有这个毛病的。