以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  目录树  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=8880)

--  作者:实话实说
--  发布时间:2010/12/19 19:21:00
--  目录树
能否这样编辑目录树
图片点击可在新窗口打开查看此主题相关图片如下:snap1.jpg
图片点击可在新窗口打开查看

--  作者:狐狸爸爸
--  发布时间:2010/12/20 8:54:00
--  

参考:
 
http://help.foxtable.com/topics/1988.htm

 


--  作者:实话实说
--  发布时间:2010/12/20 9:43:00
--  

2种方法不一样,帮助中的目录树编辑要调出窗口,然后保存为文件再应用到目录树,不是在目录树上直接编辑。我想如果目录树控件有右击鼠标属性,(类似快捷菜单)将目录树窗口的编辑按钮代码放在这个属性中设置就好了


--  作者:狐狸爸爸
--  发布时间:2010/12/20 9:50:00
--  
道理一样的,你一楼的可以用停靠窗口或者SplitContainer控件实现,至于快捷菜单,foxtable也可以设计啊
--  作者:实话实说
--  发布时间:2010/12/20 11:04:00
--  

可能是我说的不明白。我的理解是目录树有两种,一种是直接使用的目录树,一种是编辑目录树,我想直接在使用的目录树上进行编辑,不需要专门编辑目录树的窗口,但可以将目录树编辑窗口中按钮的代码用在目录树控件的事件中。遗憾的是没有右击鼠标属性。一楼是右键单击后出现菜单

 

[此贴子已经被作者于2010-12-20 11:05:42编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/12/20 11:16:00
--  

使用的目录树和编辑的目录树,是没有这种分类的。

 

你愿意加入快捷菜单,也是可以的:

 

http://help.foxtable.com/topics/1326.htm

 


--  作者:实话实说
--  发布时间:2010/12/20 11:31:00
--  

来个实例吧

表A窗口中设计好了目录树,我想在使用的时候也能象设计目录树那样编辑目录树,不是进入窗口进行编辑,该如何设计?

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


--  作者:狐狸爸爸
--  发布时间:2010/12/20 11:49:00
--  

快捷菜单的设计和显示方法告诉你了,编辑目录树的方法帮助也有,你还是先自己尝试一下,遇到实在过不去的关卡再提问,到时我再帮你看看。


--  作者:实话实说
--  发布时间:2010/12/20 14:05:00
--  
OK,明白了。请告之窗口目录树编辑中“左移结点”和“右移结点”的代码。(控件右下角菜单中)
--  作者:狐狸爸爸
--  发布时间:2010/12/20 15:00:00
--  

这是foxtable内部的左移目录树节点代码:

 

 

    With trv.BaseControl

            If .SelectedNode IsNot Nothing Then
                Dim nd As TreeNode = .SelectedNode
                If nd.Level = 0 Then Exit Sub
                Dim Nodes As Windows.Forms.TreeNodeCollection
                If nd.Parent.Level = 0 Then
                    Nodes = nd.TreeView.Nodes
                Else
                    Nodes = nd.Parent.Parent.Nodes
                End If
                nd.Parent.Nodes.Remove(nd)
                Nodes.Add(nd)
                .SelectedNode = nd
            End If
        End With

 

右移:

 

     With trv.BaseControl

            If .SelectedNode IsNot Nothing Then
                Dim nd As TreeNode = .SelectedNode
                If nd.Index = 0 Then Exit Sub
                Dim Nodes As Windows.Forms.TreeNodeCollection = nd.PrevNode.Nodes
                If nd.Parent IsNot Nothing Then
                    nd.Parent.Nodes.Remove(nd)
                Else
                    nd.TreeView.Nodes.Remove(nd)
                End If
                Nodes.Add(nd)
               .SelectedNode = nd
            End If
        End With

[此贴子已经被作者于2010-12-20 15:46:52编辑过]