以文本方式查看主题

-  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=9719)

--  作者:kylin
--  发布时间:2011/5/4 17:34:00
--  创建排序的目录树出错,请大家帮忙诊断一下!

在窗口的AfterLoad事件中写以下代码:

Dim g As New GroupTableBuilder("统计表1", DataTables("hfclrk"))
g.Groups.AddDef("大类")
g.Groups.AddDef("明细类")
g.Groups.AddDef("材料名称")
g.Totals.AddDef("成本数量")

g.Build()

Dim tv As WinForm.TreeView
tv =e.Form.Controls("TreeView1")
tv.BuildTree("统计表1", "大类|明细类|材料名称","成本数量")

打开窗口后出现这样的提示:

 


此主题相关图片如下:qq截图未命名.png
按此在新窗口浏览图片

 

去掉以上排序,即tv.BuildTree("统计表1", "大类|明细类|材料名称")就不会出错


--  作者:狐狸爸爸
--  发布时间:2011/5/4 17:47:00
--  
呵呵,可能有bug,能否做个实例给我?
--  作者:kylin
--  发布时间:2011/5/4 20:22:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

参见刚做好的例子


--  作者:狐狸爸爸
--  发布时间:2011/5/4 22:37:00
--  
谢了,我抽空看看。
--  作者:狐狸爸爸
--  发布时间:2011/5/6 21:36:00
--  

呵呵,我还以为有不管, 特地等到周末处理,原来是你代码错误:

 

tv.BuildTree("统计表1", "大类|明细类|材料名称","成本数量")

 

应该:

 

tv.BuildTree("统计表1", "大类|明细类|材料名称")


--  作者:kylin
--  发布时间:2011/5/7 7:45:00
--  

按照帮助的介绍,我的代码并没有错,引用帮助中的文件:

 

根据多列内容生成目录树

目录树有一个BuildTree方法,可以根据指定的数据表内容生成目录树节点。

语法:

BuildTree(DataTableName, Columns, Filter, Sort)

BuildTree(DataTable, Columns, Filter, Sort)

 

那就是说为了排序,我可以加上一个排序的列名呀。


--  作者:狐狸爸爸
--  发布时间:2011/5/7 8:31:00
--  

排序参数是第四个,你放在第三的位置,等于就是Filter参数啊,应该这样。

tv.BuildTree("统计表1", "大类|明细类|材料名称","", "大类|明细类|成本数量")

 

 


--  作者:kylin
--  发布时间:2011/5/7 10:09:00
--  

明白了。

谢谢!