3+

QTreeViewWidget example

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *

def main():
    app = QApplication(sys.argv)
    treeWidget = QTreeWidget()
    treeWidget.setColumnCount(1)
    items = []
    child = []
    for i in range(5):
        items.append(QTreeWidgetItem(QStringList(["hoge"+str(i),"moge"+str(i+1)])))

    for i in range(10):
        child.append(QTreeWidgetItem(QStringList(QString("child: %1").arg(i))))

    items[0].addChildren(child)

    treeWidget.setHeaderLabels(["name","info"])
    treeWidget.insertTopLevelItems(0,items)
    treeWidget.itemClicked.connect(item_change)
    treeWidget.show()

    sys.exit(app.exec_())

def item_change(item,column):
    print item
    print column

if __name__ == "__main__":
    main()
;(function(document){ var pres = document.getElementsByTagName("pre") for(var i=pres.length; i--; ){  var el = makeOl(pres[i]) pres[i].appendChild(el) } function makeOl(pre){ var ol = document.createElement("ol") , li = document.createElement("li") , df = document.createDocumentFragment() , br = pre.innerHTML.match(/\n/g) || 0 ol.className = "preLine" ol.setAttribute("role", "presentation") // no lang, no line-number if( pre.className && ! /lang-./.test(pre.className) ){ br.length += 1 } for(var i=br.length; i--; ){ var li2 = li.cloneNode(true) df.appendChild(li2) } ol.appendChild(df) return ol } })(document)