以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]请教关于下拉目录树的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=63605) |
-- 作者:青鸟 -- 发布时间:2015/1/24 17:07:00 -- [求助]请教关于下拉目录树的问题 关于下拉目录树输入问题: <!--[if !supportLists]-->1
<!--[endif]-->基本情况: Table(“合同类别”) Table(“合同台账”) <!--[if !supportLists]-->2
<!--[endif]-->目的: 希望利用Table(“合同类别”)的数据,建立下拉目录树窗口,在Table(“合同台账”).Col(“合同类型”)中调用该下拉目录树窗口,点击自动输入Col(“合同类型”)& Col(“一级合同类别”)& Col(“二级合同类别”)& Col(“三级合同类别”) <!--[if !supportLists]-->3
<!--[endif]-->操作: <!--[if !supportLists]-->3.1 <!--[endif]-->在Table(“合同类别”)中,新建一个窗口,名为“合同类别目录树”,窗口类型设置为“DropDownForm”; <!--[if !supportLists]-->3.2 <!--[endif]-->该窗口中插入一个TreeView控件; <!--[if !supportLists]-->3.3 <!--[endif]-->该窗口的的AfterLoad事件设置为: Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.BuildTree("合同类别","合同类型名称|一级合同类别名称|二级合同类别名称|三级合同类别名称") <!--[if !supportLists]-->3.4 <!--[endif]-->TreeView的NodeMouseClick事件代码设置为: <!--[if !supportLists]-->4
<!--[endif]-->If e.Node.Level = 3 Then Dim Vals() As String = e.Node.FullPath.Split("\\") Dim Filter As String = "[合同类型名称] = \'" & Vals(0) & "\' And [一级合同类别名称] = \'" & Vals(1) & "\' And [二级合同类别名称] = \'" & Vals(2) & "\' And [三级合同类别名称] = \'" & Vals(3) & "\'" Dim dr As DataRow = DataTables("合同类别").Find(Filter) Dim r As Row = Tables("合同台账").Current If dr IsNot Nothing Then r("合同类型")
= dr("合同类型名称") r("一级合同类别")
= dr("一级合同类别名称") r("二级合同类别")
= dr("二级合同类别名称") r("三级合同类别")
= dr("三级合同类别名称") e.Form.DropDownBox.Value =
r("三级合同类别") End If e.Form.DropDownBox.CloseDropdown()
End If <!--[if !supportLists]-->4.1
<!--[endif]-->在Table(“合同台账”)的CellButtonClick事件中设置: Forms("合同类别目录树").Open() e.Cancel = True <!--[if !supportLists]-->5
<!--[endif]-->问题: <!--[if !supportLists]-->5.1 <!--[endif]-->运行后,在Table(“合同台账”)内,没有反应,连下拉菜单标记都没有。 <!--[if !supportLists]-->5.2 <!--[endif]-->将窗口属性修改成“模式”,应用后窗口内的目录树正常: <!--[if !supportLists]-->5.3 <!--[endif]-->命令窗口测试调用“模式”窗口,目录树也正常 <!--[if !supportLists]-->6
<!--[endif]-->请教高手问题出在哪里? |
-- 作者:Bin -- 发布时间:2015/1/24 17:09:00 -- 为什么有那么多乱码? 你直接把文件发上来. |