以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  用目录树输入数据的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118764)

--  作者:douglas738888
--  发布时间:2018/5/10 15:23:00
--  用目录树输入数据的问题

请教老师,根据帮助例子——用目录树输入数据,这里 NodeMouseDoubleClick 的代码怎样修改条件可实现多个表都能打开同一个窗口使用,还是必须每个表做一个窗口才行?

 

 

If e.Node.Level = 0 Then \'如果是顶层节点
   
Return \'则返回
End
If
Dim
Vals() As String = e.Node.FullPath.Split("\\")
Dim
Filter As String = "[省市] = \'" & Vals(0) & "\' And [县市] = \'" & Vals(1) & "\'"
Dim
dr As DataRow = DataTables("行政区域").Find(Filter)
Dim
r As Row = Tables("客户资料").Current \'这里指定的是固定的Table
r(
"省市") = dr("省市")
r(
"县市") = dr("县市")
r(
"区号") = dr("区号")
r(
"邮编") = dr("邮编"
)
e.Form.Close()


--  作者:有点甜
--  发布时间:2018/5/10 15:26:00
--  

打开窗口前

 

vars("表格") = e.Table

 

然后使用此变量

 

Dim r As Row = vars("表格").Current \'这里指定的是固定的Table


--  作者:douglas738888
--  发布时间:2018/5/10 16:07:00
--  

老师, 这个放在哪里?好像都不能放在函数和全局变量里面,窗口afterload也不对

 

vars("表格") = e.Table

[此贴子已经被作者于2018/5/10 16:07:47编辑过]

--  作者:有点甜
--  发布时间:2018/5/10 16:20:00
--  
以下是引用douglas738888在2018/5/10 16:07:00的发言:

老师, 这个放在哪里?好像都不能放在函数和全局变量里面,窗口afterload也不对

 

vars("表格") = e.Table

[此贴子已经被作者于2018/5/10 16:07:47编辑过]

 

你在哪里打开窗口的?那就写在哪里。


--  作者:douglas738888
--  发布时间:2018/5/10 16:39:00
--  

老师,我是在通过CellButtonClick 打开窗口的,点击按钮报错未定义变量表A,   再点击目录树报错 未设置对象变量或 With 块变量。

vars("表A") = e.Table 写在 CellButtonClick里面

 

vars("表A") = e.Table
If e.Col.Name = "姓名" Then
    Forms("信息下拉").Open()
e.Cancel = True

[此贴子已经被作者于2018/5/10 16:42:15编辑过]

--  作者:有点甜
--  发布时间:2018/5/10 16:49:00
--  

全局代码

 

public _curTable As Table = Nothing

 

CellButtonClick

 

_curTable = e.Table

 

然后直接引用此变量 _curTable 即可