以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]窗口变量返回问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=103483)

--  作者:XJligongping
--  发布时间:2017/7/10 8:06:00
--  [求助]窗口变量返回问题

我设计了如图上的两个窗口,部门编号使用旁边的按钮调用另一个窗口上的目录树,选择相应的节点后,返回值给全局变量,再将变量赋值给主窗口的相应控件,但出现选择后无法将值反应到相应的控件,再按一次按钮,值就显示出来了,什么原因?在鼠标双击事件里的代码是

If e.node.nodes.count < 1 Then
    Vars("T_NewFullname") = e.node.fullname
    Vars("T_NewFullPlth") =e.node.FullPath
End If
e.Form.close

 

在按钮单击事件中的代码是:

Forms("TreeView").Show()

Forms("员工信息录入").Controls("TextBox3").value = Vars("T_NewFullname")
Forms("员工信息录入").Controls("TextBox11").Value = Vars("T_NewFullPlth")

 

 


图片点击可在新窗口打开查看此主题相关图片如下:tim截图20170710075250.png
图片点击可在新窗口打开查看

--  作者:XJligongping
--  发布时间:2017/7/10 8:10:00
--  
在主窗口加的目录树,操作后变量的传递及赋值都可以及时显示。
--  作者:有点甜
--  发布时间:2017/7/10 8:41:00
--  

方法一:把treeview窗口改成模式窗口;

 

方法二:代码直接写

 

If e.node.nodes.count < 1 Then
    Vars("T_NewFullname") = e.node.fullname
    Vars("T_NewFullPlth") =e.node.FullPath

    Forms("员工信息录入").Controls("TextBox3").value = Vars("T_NewFullname")
    Forms("员工信息录入").Controls("TextBox11").Value = Vars("T_NewFullPlth")

End If
e.Form.close


--  作者:XJligongping
--  发布时间:2017/7/10 10:22:00
--  
谢谢,改成模式窗口,问题解决了,但又出现新问题,其他控件用列表框输入数据后,刚用全局变量赋值的两个文本框数据被清除为空,会是什么原因?
--  作者:有点甜
--  发布时间:2017/7/10 10:31:00
--  

按钮代码这样写

 

Forms("TreeView").Show()

Forms("员工信息录入").Controls("TextBox3").value = Vars("T_NewFullname")

Forms("员工信息录入").Controls("TextBox3").writevalue
Forms("员工信息录入").Controls("TextBox11").Value = Vars("T_NewFullPlth")

Forms("员工信息录入").Controls("TextBox11").writeValue