以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  目录树中产生了乱码,请大侠帮我斧正  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=8470)

--  作者:小狐
--  发布时间:2010/10/30 20:21:00
--  目录树中产生了乱码,请大侠帮我斧正

不应产生这样的乱码啊,不知道我那一步没有弄对,请大家帮邦忙

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


图片点击可在新窗口打开查看此主题相关图片如下:未标题-1 拷贝.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-10-30 20:21:27编辑过]

--  作者:mr725
--  发布时间:2010/10/30 23:14:00
--  

节点增加完成后,都要  DataTables("单位树").save()

不然的话:i1 = DataTables("单位树").Compute("count(节点)","标题id like \'" & str1 & "\'") + 1  就不正确了。

 

再说:这个 【标题id like \'" & str1 & "\' 】好像有问题的··· 会导致相同节点的名称有重复的名称?

[此贴子已经被作者于2010-10-30 23:28:44编辑过]

--  作者:小狐
--  发布时间:2010/10/31 14:59:00
--  

这些乱码是什么码,

要达到这个要求\\生成规律(即没有划圈部分),应该如何更改代码

[此贴子已经被作者于2010-10-31 20:25:13编辑过]

--  作者:czy
--  发布时间:2010/10/31 20:33:00
--  

我觉得这个乱并不碍事,因为节点名称是随机生成的,你引用了名称,肯定就是这样的了。

不过你的代码实在太乱了。


--  作者:小狐
--  发布时间:2010/10/31 20:42:00
--  

这个模式我很需要,但是想不出来,使用了“华海仓库管理”的程序,将sql转为了foxtable代码,

C版,能不能帮我改一下


--  作者:czy
--  发布时间:2010/10/31 20:46:00
--  

这样试试

 

Dim tr As WinForm.TreeView
Dim nd As WinForm.TreeNode
tr = Forms("参数设置").Controls("TreeView1")
Dim i1,i2 AS Integer
Dim str1,str2 AS String
Dim txtBox As String = e.Form.Controls("TextBox1").Value
If txtBox = "" Then
    MessageBox.Show("请输入要增加节点的名称!","提示")
    Return
End If
Dim 新行1 As DataRow
新行1 = DataTables("单位树").AddNew()
If vars("str100") = "根" Then
    i1 = DataTables("单位树").Compute("count(节点)","节点 = 0") + 1
    str1 = format(i1,"00")
    nd = Tr.Nodes.Add(str1,txtBox)
    tr.SelectedNode = nd
    新行1("标题id") = str1
    新行1("标题") = txtbox
    新行1("节点") = 0
    新行1("节点位") = i1
    txtBox = ""
Else
    nd=tr.SelectedNode
    str1 = nd.Name
    Dim dr As DataRow = DataTables("单位树").Find("标题 = \'" & nd.Text & "\'")
    i2=nd.Level+1
    i1 = DataTables("单位树").Compute("count(节点)","标题id like \'" & str1 & "\'") + 1
    str2 = format(i1,"00")
    nd.Nodes.Add( str1 & str2 ,txtBox)
    新行1("标题id") = dr("标题id") & str2
    新行1("标题") = txtbox
    新行1("节点") = i2
    新行1("节点位") = i1
    txtBox = ""
    nd.Expand()
End If
If e.Form.Controls("CheckBox1").Checked = True Then
    e.Form.Controls("TextBox1").Select()
Else
    e.form.Close()
End If


--  作者:czy
--  发布时间:2010/10/31 20:47:00
--  

使用楼上代码前请先执行一下下面的代码:

 

For Each dr As DataRow In DataTables("单位树").DataRows
    dr("标题id") = dr("标题id").Trim()
Next


--  作者:小狐
--  发布时间:2010/10/31 21:10:00
--  

C版,目录树在增加第三级时(或者第四、五.........级时),生成的标题id不对(原为增加二级目录时存在重名),帮助里面调用目录树节点的资料中没有可以借鉴的东西,不知道如何下手....

[此贴子已经被作者于2010-10-31 22:42:11编辑过]

--  作者:czy
--  发布时间:2010/10/31 22:57:00
--  
以下是引用小狐在2010-10-31 21:10:00的发言:

C版,目录树在增加第三级时(或者第四、五.........级时),生成的标题id不对(原为增加二级目录时存在重名),帮助里面调用目录树节点的资料中没有可以借鉴的东西,不知道如何下手....

[此贴子已经被作者于2010-10-31 22:42:11编辑过]

 

不是我不帮,其实你这个文件我看过多次,问题很多,一旦帮你改动问题会没完没了的来,所以每次最终都是放弃。

我没研究过“华海仓库管理”,不知道他的具体思路,我按我的思路增加了一个辅助列,供你参考。

 

 

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

[此贴子已经被作者于2010-10-31 23:01:14编辑过]

--  作者:小狐
--  发布时间:2010/11/1 19:56:00
--  
谢谢,