以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  窗口中能否实现用目录树录入  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=6686)

--  作者:cxabc123
--  发布时间:2010/4/19 14:32:00
--  窗口中能否实现用目录树录入

窗口中能否实现使用目录树进行输入,如果能请指教以下实现的编码


--  作者:狐狸爸爸
--  发布时间:2010/4/19 14:52:00
--  

窗口设计 - 其他 - 用目录树录入数据


--  作者:cxabc123
--  发布时间:2010/4/19 15:00:00
--  
你说的这个我已经会使用了,我说的是在窗口中的控件(不包括窗口中的表控件)中采用目录树的方法录入数据
--  作者:狐狸爸爸
--  发布时间:2010/4/19 15:53:00
--  
呵呵,一样的道理啊
--  作者:cxabc123
--  发布时间:2010/4/19 16:12:00
--  

1、在行政区域表新建一个窗口,窗口类型设为模式型。
2、在窗口中加入一个目录树控件。
3、将窗口的AfterLoad事件设为:

Dim tv As WinForm.TreeView
tv = e.Form.Controls(
"TreeView1")
tv.BuildDataTree(
"行政区域","","省市","县市")

4、将目录树的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
r(
"省市") = dr("省市")
r(
"县市") = dr("县市")
r(
"区号") = dr("区号")
r(
"邮编") = dr("邮编"
)
e.Form.Close()

5、最后选择客户资料表,将其CellButtonClick事件设为:

Forms("窗口1").Open()
e.Cancel =
True


前面的4条都很清楚,就是第五条应该放在窗口控件的什么地方,我试过多次找不到合适的地方
[此贴子已经被作者于2010-4-19 16:15:45编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/4/19 16:37:00
--  
做个小按钮,放在文本框的旁边,第5的代码设置在这个按钮的Click事件。