以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何实现以下功能?谢谢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9237)

--  作者:雨中的泪
--  发布时间:2011/3/17 16:01:00
--  如何实现以下功能?谢谢

在表B的录入窗口中,直接根据目录树选择“组”后,“村”、“乡镇”控件内自行填入相应的值!!!

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:乡镇、村、组别判断,编号.table


--  作者:狐狸爸爸
--  发布时间:2011/3/17 16:14:00
--  

将目录数的NodeMouseDoubleClick事件改为:
 
 Dim Vals() As String = e.Node.FullPath.Split("\\")
Dim frm As WinForm.Form = Forms("基础信息录入窗口")
If frm.Opened
Dim xz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("乡镇")
Dim cz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("村")
Dim zb As WinForm.TextBox = Forms("基础信息录入窗口").Controls("组")
   xz.Value = vals(0)
   If vals.Length > 0 Then
      cz.Value = vals(1)
  End If
   If vals.Length > 1 Then
      zb.Value = vals(2)
  End If
End If
e.Form.Close()


--  作者:雨中的泪
--  发布时间:2011/3/17 16:25:00
--  
双击乡镇、村节点要出错!!
--  作者:雨中的泪
--  发布时间:2011/3/17 16:37:00
--  

If e.Node.Level = 0 Then
    Dim Vals() As String = e.Node.FullPath.Split("\\")
    Dim Filter As String = "[乡镇] = \'" & Vals(0) & "\' "
    Tables("表A").Position = Tables("表A").findRow(Filter,0,False)
ElseIf e.Node.Level = 1 Then
    Dim Vals() As String = e.Node.FullPath.Split("\\")
    Dim Filter As String = "[村] = \'" & Vals(0) & "\'and [组] = \'" & Vals(1) & "\' "
    Tables("表A").Position = Tables("表A").findRow(Filter,0,False)
ElseIf e.Node.Level = 2 Then
    Dim Vals() As String = e.Node.FullPath.Split("\\")
    Dim Filter As String = "[乡镇] = \'" & Vals(0) & "\'and [村] = \'" & Vals(1) & "\' and [组] = \'" & Vals(2) & "\' "
   
Dim Vals1() As String = e.Node.FullPath.Split("\\")
Dim frm As WinForm.Form = Forms("基础信息录入窗口")
If frm.Opened
Dim xz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("乡镇")
Dim cz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("村")
Dim zb As WinForm.TextBox = Forms("基础信息录入窗口").Controls("组")
   xz.Value = vals(0)
   If vals1.Length > 0 Then
      cz.Value = vals(1)
  End If
   If vals1.Length > 1 Then
      zb.Value = vals(2)
  End If
End If
e.Form.Close()

End If


--  作者:狐狸爸爸
--  发布时间:2011/3/17 16:37:00
--  
Dim Vals() As String = e.Node.FullPath.Split("\\")
Dim frm As WinForm.Form = Forms("基础信息录入窗口")
If frm.Opened
Dim xz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("乡镇")
Dim cz As WinForm.TextBox = Forms("基础信息录入窗口").Controls("村")
Dim zb As WinForm.TextBox = Forms("基础信息录入窗口").Controls("组")
   xz.Value = vals(0)
   If vals.Length > 1 Then
      cz.Value = vals(1)
  End If
   If vals.Length > 2 Then
      zb.Value = vals(2)
  End If
End If

--  作者:雨中的泪
--  发布时间:2011/3/17 16:37:00
--  

这样加进去就可以了

 


--  作者:雨中的泪
--  发布时间:2011/3/17 16:38:00
--  

由于控件未绑定表,如何将这些未绑定表的控件内的数据保存到表相应的行和列内?

 

谢谢


--  作者:狐狸爸爸
--  发布时间:2011/3/17 16:40:00
--  

直接写入:

 

Tables(" 表名").Current("列名") = Forms("窗口名").Controls("控件名").Value