以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  逻辑值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=47055)

--  作者:发财
--  发布时间:2014/3/4 8:43:00
--  逻辑值

Dim dr As DataRow
If Tables("收购").Rows.Count = 0 Then
    dr = DataTables("收购").AddNew()
    dr("日期") = vars("adate")
    e.Form.Controls("猪主姓名").Select()
Else
    For Each r As Row In Tables("收购")
        r("修改") = True
    Next
    With Tables("收购")
        .Position = .Rows.Count - 1
    End With
   
    \'以下代码实现:检查位置内的数值有没有未输入的. 一个 为空控件名称一个为提示中文集合
    Dim kjmc() As String \'控件名称
    Dim kjmcjh As String = "猪主姓名,重量,单价" \'控件名称集合
    kjmc = kjmcjh.Split(",")
    For i As Integer=0 To kjmc.Length-1
        If e.Form.Controls(kjmc(i)).value Is Nothing Then
            MessageBox.Show(kjmc(i) & "不能为空,请检查")
            Dim t As Row = Tables("收购").current()
            t("修改") = False
            e.Form.Controls(kjmc(i)).Select
            Return
        End If
    Next
    dr = DataTables("收购").AddNew()
    dr("日期") = vars("adate")
    With Tables("收购")
        .Position = .Rows.Count - 1
    End With  
    e.Form.Controls("猪主姓名").Select()   
End If

 

为什么录入第一后,再录入第二条时,第一记录的“修改”不能自动加上true,在录入第二条回车后,第一条、第二条记录才能同时加上true,录入第三条后,才正常,如何改?


--  作者:Bin
--  发布时间:2014/3/4 8:48:00
--  
你放在DataColChanged事件? 那要退出单元格才会触发


--  作者:发财
--  发布时间:2014/3/4 8:50:00
--  
不是,在控件的click里做的。
--  作者:发财
--  发布时间:2014/3/4 8:52:00
--  
“修改”是数据表里面的逻辑值。
--  作者:Bin
--  发布时间:2014/3/4 8:53:00
--  
请上例子.