精华内容
下载资源
问答
  • TreeView

    2011-09-01 10:54:27
    TreeView 无限树
  • Treeview

    千次阅读 2017-11-22 14:14:34
    简单介绍一下JQUERY中的插件Treeview的用法, 地址:http://docs.jquery.com/Plugins/Treeview (有大量的例子,下载源码) http://jquery.bassistance.de/treeview/demo/ (有大量的例子参考) 具体介绍需要...

    简单介绍一下JQUERY中的插件Treeview的用法,

        * animated :string/number树形动作的速度,主要参看animate()函数。
         eg:$("test").treeview({
            animated: "fast"
              })
      collapsed :Boolean
       设置为True:所有的文件枝是关闭状态
       设置为False(默认):所有文件枝是打开的状态
       eg:
       $("test").treeview({
       collapsed: true
        })
      unique :Boolean
       设置为True:一个层次上只允许一个分支是打开的
       设置为False(默认):一个层次上可以同时打开多个分支
       eg:
       $("test").treeview({
       unique : true
        })
      control :Selector
      放置treecontrol的容器的id,treecontrol就是通过一个点击按钮可以展开,合并以及切换分支。
      $("#test").treeview({
           animated: "fast",
           collapsed: true,
           control: "#sidetreecontrol",
       });
       ......
      <div id="sidetreecontrol"><a href="?#">Collapse All</a> | <a href="?#">Expand All</a></div>
       ......
       persist :string
        ```
    *  在cookie中或是网页位置上保持树的状态,如果设置为“cookie”,保持树形的每一个click点击操作到cookie中,当重新加载树形结构的时候,就恢复这些树形的状态。If set to "location", looks for the anchor that matches location.href and activates that part of the treeview it. Great for href-based state-saving. 
      (如需要更加详细的了解这个插件,可到上面提供的官方网站上查看)
    
    * 如何在你定义好的id为"test"的容器中安排好你的树形结构:
    * 主要是通过ul和li这两个标签我做的:
       <ul>...</ul>: ul标签里面包含一些分支
       <li>...</li>: 分支的具体定义在li标签里面
    
    * 简单事例说明:
     ```
    [xhtml] view plain copy
         <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
                        "http://www.w3.org/TR/html4/loose.dtd">  
        <html>  
        <head>  
          <mce:script src="http://code.jquery.com/jquery-latest.js" mce_src="http://code.jquery.com/jquery-latest.js"></mce:script>  
          <link rel="stylesheet" href="http://dev.jquery.com/view/trunk/plugins/treeview/jquery.treeview.css" mce_href="http://dev.jquery.com/view/trunk/plugins/treeview/jquery.treeview.css" type="text/css" media="screen" />  
          <mce:script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/treeview/jquery.treeview.js" mce_src="http://dev.jquery.com/view/trunk/plugins/treeview/jquery.treeview.js"></mce:script>  
          <mce:style type="text/css"><!--  
          #browser {  
            font-family: Verdana, helvetica, arial, sans-serif;  
            font-size: 68.75%;  
          }  
    
    --></mce:style><style type="text/css" mce_bogus="1">      #browser {  
            font-family: Verdana, helvetica, arial, sans-serif;  
            font-size: 68.75%;  
          }  
          </style>  
          <mce:script type="text/javascript"><!--  
          $(document).ready(function(){  
            $("#browser").treeview();  
         $("#add").click(function() {  
             var branches = $("<li><span class='folder'>New Sublist</span><ul>" +  
                 "<li><span class='file'>Item1</span></li>" +  
                 "<li><span class='file'>Item2</span></li>" +  
                 "</ul></li>").appendTo("#browser");  
             $("#browser").treeview({  
                 add: branches  
             });  
         });  
          });  
    
    // --></mce:script>  
    
        </head>  
        <body>  
    
          <ul id="browser" class="filetree">  
             <li><span class="folder">Folder 1</span>  
                 <ul>  
                     <li><span class="file">Item 1.1</span></li>  
                 </ul>  
             </li>  
             <li><span class="folder">Folder 2</span>  
                 <ul>  
                     <li><span class="folder">Subfolder 2.1</span>  
                         <ul id="folder21">  
                             <li><span class="file">File 2.1.1</span></li>  
                             <li><span class="file">File 2.1.2</span></li>  
                         </ul>  
                     </li>  
                     <li><span class="file">File 2.2</span></li>  
                 </ul>  
             </li>  
             <li class="closed"><span class="folder">Folder 3 (closed at start)</span>  
                 <ul>  
                     <li><span class="file">File 3.1</span></li>  
                 </ul>  
             </li>  
             <li><span class="file">File 4</span></li>  
           </ul>  
    
           <button id="add">Add!</button>  
        </body>  
        </html>  
    • 本文章转载他人,记录自己的学习过程的参照物,方便以后使用查找
    展开全文
  • treeview

    2019-05-08 22:19:08
    昨天整了一天Tkinter的treeview,发现中文的教程乃至提问都很少,其中两个问题的解决都是靠steakoverflow上找到的…… 在这里放出来我遇到并解决的问题,大家以后可能遇到的话就能省点事了~ 插入方法: import ...

    昨天整了一天Tkinter的treeview,发现中文的教程乃至提问都很少,其中两个问题的解决都是靠steakoverflow上找到的……

    在这里放出来我遇到并解决的问题,大家以后可能遇到的话就能省点事了~

     
    插入方法:

        import tkinter
        from tkinter import ttk  # 导入内部包
         
        li = ['王记','12','男']
        root = tkinter.Tk()
        root.title('测试')
        tree = ttk.Treeview(root,columns=['1','2','3'],show='headings')
        tree.column('1',width=100,anchor='center')
        tree.column('2',width=100,anchor='center')
        tree.column('3',width=100,anchor='center')
        tree.heading('1',text='姓名')
        tree.heading('2',text='学号')
        tree.heading('3',text='性别')
        tree.insert('','end',values=li)
        tree.grid()
         
        root.mainloop()

    (为了省点事就不自己敲了)代码来自博客园提问:https://q.cnblogs.com/q/105829/#a_226277

     

    tree.insert('','end',values=li)

     

    关于“首列很宽”的问题:https://segmentfault.com/q/1010000004206667?sort=created

     

    设置show属性为 headings 即可隐藏首列。

         
        ttk.Treeview(frame,height=18, show="headings", columns=('a','b','c','d','e','f'))

     

    配上一个还可以的综合一点的例子https://www.cnblogs.com/Tommy-Yu/p/4156014.html

     
    清空方法:

    参考stackoverflow的提问https://stackoverflow.com/questions/32511843/delete-and-edit-items-in-treeview-tkinter

    代码是对上面的代码添加的

        import tkinter
        from tkinter import ttk  # 导入内部包
         
        li = ['王记','12','男']
        root = tkinter.Tk()
        root.title('测试')
        tree = ttk.Treeview(root,columns=['1','2','3'],show='headings')
        tree.column('1',width=100,anchor='center')
        tree.column('2',width=100,anchor='center')
        tree.column('3',width=100,anchor='center')
        tree.heading('1',text='姓名')
        tree.heading('2',text='学号')
        tree.heading('3',text='性别')
        tree.insert('','end',values=li)
        tree.grid()
         
        def delButton(tree):
            x=tree.get_children()
            for item in x:
                tree.delete(item)
         
        delButton(tree)
         
        root.mainloop()

    (同样是为了省事……这个就是我在博客园的那个提问的回答)

     

    另一种方法:来自很有用但是杂的链接:https://www.cnblogs.com/wumac/p/5816764.html

     

        items = your_treeview.get_children()
         
        [your_treeview.delete(item) for item in items]

     
    获取条目值

    同样没见到有人问,stackoverflow上才找到的方法

    https://stackoverflow.com/questions/34849035/how-to-get-the-value-of-a-selected-treeview-item

        import tkinter
        from tkinter import ttk  # 导入内部包
         
        li = ['王记','12','男']
        root = tkinter.Tk()
        root.title('测试')
        tree = ttk.Treeview(root,columns=['1','2','3'],show='headings')
        tree.column('1',width=100,anchor='center')
        tree.column('2',width=100,anchor='center')
        tree.column('3',width=100,anchor='center')
        tree.heading('1',text='姓名')
        tree.heading('2',text='学号')
        tree.heading('3',text='性别')
        tree.insert('','end',values=li)
        tree.grid()
         
         
        def treeviewClick(event):#单击
            print ('单击')
            for item in tree.selection():
                item_text = tree.item(item,"values")
                print(item_text[0])#输出所选行的第一列的值
         
        tree.bind('<ButtonRelease-1>', treeviewClick)#绑定单击离开事件===========
         
        root.mainloop()

     

    见函数treeview里的内容

     

    有用的链接:https://www.cnblogs.com/Tommy-Yu/p/4156014.html

     
    各种点击事件
    事件一览表 事件     代码     备注
    鼠标左键单击按下     1/Button-1/ButtonPress-1     
    鼠标左键单击松开     ButtonRelease-1     
    鼠标右键单击     3     
    鼠标左键双击     Double-1/Double-Button-1     
    鼠标右键双击     Double-3     
    鼠标滚轮单击     2     
    鼠标滚轮双击     Double-2     
    鼠标移动     B1-Motion     
    鼠标移动到区域     Enter     
    鼠标离开区域     Leave     
    获得键盘焦点     FocusIn     
    失去键盘焦点     FocusOut     
    键盘事件     Key     
    回车键     Return     
    控件尺寸变     Configure     

     

     

     

     

     

     

     

     

     

     

     

     

     

    来自:https://www.cnblogs.com/wumac/p/5842393.html

    用法:

    tree.bind('<ButtonRelease-1>', treeviewClick)#绑定单击离开事件===========

    在bind方法里的'<>'添上相应的事件代码就好了,后面的treeview就是我定义的函数

     
    标题点击排序

    https://blog.csdn.net/mikewolfli/article/details/51393933(强烈怀疑此链接是没注明来源,来自下面的链接的代码)

    https://stackoverflow.com/questions/22032152/python-ttk-treeview-sort-numbers(不按默认桶排序的方法)

    https://stackoverflow.com/questions/1966929/tk-treeview-column-sort(python3可用的见此链接最下面)

    试验可运行代码

        import random
        from tkinter import ttk
        from tkinter import *
         
        root = Tk()     # 初始旷的声明
        columns=("a","b","c")
        treeview=ttk.Treeview(root,height=18,show="headings",columns=columns )#表格
         
        treeview.column('a', width=50, anchor='center')
        treeview.column('b', width=100, anchor='center')
        treeview.column('c', width=80, anchor='center')
        treeview.heading('a', text='列1')
        treeview.heading('b', text='列2')
        treeview.heading('c', text='列3')
        treeview.pack(side=LEFT,fill=BOTH)
        for i in range(10):
            treeview.insert('',i,values=(str(random.randint(0,9)),str(random.randint(0,9)),str(random.randint(0,9))))
         
         
        def treeview_sort_column(tv, col, reverse):#Treeview、列名、排列方式
            l = [(tv.set(k, col), k) for k in tv.get_children('')]
            print(tv.get_children(''))
            l.sort(reverse=reverse)#排序方式
            # rearrange items in sorted positions
            for index, (val, k) in enumerate(l):#根据排序后索引移动
                tv.move(k, '', index)
                print(k)
            tv.heading(col, command=lambda: treeview_sort_column(tv, col, not reverse))#重写标题,使之成为再点倒序的标题
         
        '''
        #莫名其妙????写循环的话只有最后一列管用,看论坛说的好像是python2.7管用
        for col in columns:
            treeview.heading(col, text=col, command=lambda: treeview_sort_column(treeview, col, False))
        '''
         
        '''
        #基本用法(上边注释的只有最后一列管用、索性手工试验一下可用性,证实可行)
        treeview.heading('a', text='123', command=lambda: treeview_sort_column(tree, 'a', False))#重建标题,添加控件排序方法
        treeview.heading('b', text='111', command=lambda: treeview_sort_column(tree, 'b', False))#重建标题,添加控件排序方法
        treeview.heading('c', text='223', command=lambda: treeview_sort_column(tree, 'c', False))#重建标题,添加控件排序方法
        '''
         
        #这个代码对于python3就管用了
        for col in columns:#给所有标题加(循环上边的“手工”)
            treeview.heading(col, text=col, command=lambda _col=col: treeview_sort_column(treeview, _col, False))
         
        root.mainloop()#进入消息循环

     


    ---------------------
    作者:超自然祈祷
    来源:CSDN
    原文:https://blog.csdn.net/sinat_27382047/article/details/80161637
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 自定义WPF控件 Combox+treeview以及 datagried+treeview控件支持百万级别数据量,包含源码
  • Android TreeView

    千次下载 热门讨论 2013-08-23 16:34:15
    在android中实现类似windows的treeview效果。
  • TreeView示例

    2014-02-13 15:58:41
    TreeView示例,很不错的一个例子,演示TREEVIEW拖放到另一个TREEVIEW和多选等的高级技巧
  • WPF TreeView1 双击新增节点 到TreeView2中,选中TreeView2子节点 右键删除子节点
  • TreeView实例

    2008-09-11 20:12:29
    TreeView TreeView TreeView
  • ttk Treeview

    2020-11-08 08:47:15
    import threading,time #=========== 创建 Treeview ============== def initTreeview(self): ... self.treeview = ttk.Treeview(self.frameLeft, show = "headings", columns = columns, selectmode ...

    import threading,time

    #===========  创建 Treeview  ==============

      def initTreeview(self):

            # 定义 Treeview
            columns = ("ip", "port", "id")
            self.treeview = ttk.Treeview(self.frameLeft, show = "headings", columns = columns, selectmode = tk.BROWSE)
     
            # 设置表格列宽度及文字位置
            self.treeview.column("ip",anchor="w" ,width=110)
            self.treeview.column("port", anchor = "w",width=60)
            self.treeview.column("id", anchor = "w",width=100)
             
            # 设置表格头部标题
            self.treeview.heading("ip", text = "IP")
            self.treeview.heading("port", text = "PORT")
            self.treeview.heading("id", text = "ID")
            self.treeview.pack(fill=Y, expand = True ,padx=MAIN_PADDING,pady=MAIN_PADDING)

            # 绑定点击事件
            self.treeview.bind('<Button-1>',lambda event:
                threading.Timer(0.1,self.clickTreeView,(self.treeview,)).start())

        #============  清空Treewview  ===============
        def clearClientList(self):
            # 获取所有条目列表
            itemList=self.treeview.get_children()
            # 逐条删除
            for item in itemList:
                self.treeview.delete(item)

        #============  处理点击事件  ===============
        def clickTreeView(self,treeview):
            # 获取选中的条目,可能会多选
            selectedItems = self.treeview.selection()

            # 逐列提取数据
            for item in selectedItems:  
                # 条目内容为 json,keys:text,image,values,open,tags
                itemJson = self.treeview.item(item)

                # 输出所选行的values ,显示的元组
                messagebox.showinfo('提示',itemJson['values'])

                # 删除条目
                self.treeview.delete(item)
            pass

    展开全文
  • TreeView操作

    2009-07-27 20:29:33
    TreeView操作TreeView操作TreeView操作
  • treeview应用

    2008-08-30 14:22:47
    treeview应用 treeview应用 treeview应用
  • bootstrap-treeview

    2017-07-19 22:47:53
    bootstrap-treeview.js下载
  • VBA操作treeview

    2018-05-13 21:26:58
    VBA操作treeview 最近研究Json转树型结构然后自动生成JsonPath

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,137
精华内容 7,254
关键字:

treeview