# -*- coding: cp936 -*-

from PyQt4.QtCore import *

from PyQt4.QtGui import *

class InlineEditor(QWidget):

_MUTE = 'MUTE'

def __init__(self, parent):

QWidget.__init__(self, parent)

self.setAutoFillBackground(True)

lo = QHBoxLayout()

lo.setMargin(0)

lo.setSpacing(4)

self._cbFoo = QComboBox()

for x in ["ABC", "DEF", "GHI", "JKL"]:

self._cbFoo.addItem(x)

self._leBar = QLineEdit('', self)

self._leBar.setValidator(QIntValidator(0, 999999, self))

lo.addWidget(self._cbFoo, 3)

lo.addSpacing(5)

lo.addWidget(QLabel('Bar:'))

lo.addWidget(self._leBar, 3)

lo.addStretch(5)

self.setLayout(lo)

class Form(QDialog):

def __init__(self,parent=None):

QDialog.__init__(self, parent)

grid = QGridLayout()

tree = QTreeWidget()

tree.setColumnCount(2)

for n in range(3):

i = QTreeWidgetItem(tree)     # 创建QTreeWidget的子项目i

i.setText(0,"first " + str(n))     # 设置第0列的文本

i.setText(1,"second")

for m in range(3):

j = QTreeWidgetItem(i)                # 为QTreeWidget子项目i创建子项目

j.setText(0,"child first "+str(m))

b1 = QCheckBox("push me 0",tree)   # 注意此处第二个参数,如果没有这个参数创建不成功

tree.setItemWidget(tree.topLevelItem(0).child(1), 1, b1)   #在第一个项目的第一个子项目的第2列中放置控件。

item=InlineEditor(tree)      # 处理多个控件的组合

tree.setItemWidget(tree.topLevelItem(0).child(1), 1, item)

grid.addWidget(tree)

self.setLayout(grid)

app = QApplication([])

form=Form()

form.show()

app.exec_()

pyqt小例子 treewidget的更多相关文章

  1. pyqt小例子 音乐盒

    源代码1: # -*- coding: utf-8 -*- import sys,time,os import ctypes from PyQt4 import QtCore, QtGui,Qt fr ...

  2. pyqt小例子

    from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QApplication, QMainWindow imp ...

  3. springmvc入门的第一个小例子

    今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...

  4. java即时通信小例子

    学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...

  5. Runtime的几个小例子(含Demo)

    一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.)           1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数);  [runti ...

  6. bootstrap 模态 modal 小例子

    bootstrap 模态 modal  小例子 <html> <head> <meta charset="utf-8" /> <title ...

  7. INI配置文件分析小例子

    随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...

  8. JavaScript小例子:复选框全选

    JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...

  9. 【zTree】 zTree使用的 小例子

    使用zTree树不是第一次了  但是 还是翻阅着之前做的 对照着 使用起来比较方便  这里就把小例子列出来   总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先  在 ...

随机推荐

  1. 初学者使用IntellJ IDEA建立Struts2项目

    1.建立项目,打开IDEA,点击File——>new project,选择Java Module,点击Next 选中Web Application,Version选中3.0,选中create w ...

  2. HDU 2435 There is a war (网络流-最小割)

    There is a war Problem Description       There is a sea.       There are N islands in the sea.       ...

  3. 最好的Laravel中文文档

    分页 配置 基本用法 给分页链接添加自定义信息 配置 在其它的框架中,分页有时很痛苦. 但是Laravel让分页简单到不可思议. 默认Laravel包含了两个分页视图, 在app/config/vie ...

  4. Mybatis高级映射、动态SQL及获得自增主键

    一.动态SQL 相信大家在用mybatis操作数据库时时都会碰到一个问题,假如现在我们有一个关于作者的list authorList,需要根据authorList里已有的作者信息在数据库中查询相应作者 ...

  5. web性能优化——JSP

    一.啰嗦 做web开发的都知道,性能的重要性就不必强调了.就前端展示的工作来说,jsp大家都熟悉html更熟悉:web服务器tomcat应该是最熟悉的了:web方面的基础知识上来说,静态页面比动态页面 ...

  6. 使用const 提高函数的健壮性

    1.如果输入参数采用“指针传递”,那么加const 修饰可以防止意外地改动该指针指向的内存单元,起到保护的作用. 例如:void StringCopy(char *strDest, const cha ...

  7. Sass变量、嵌套

    声明变量定义变量的语法Sass 的变量包括三个部分: 声明变量的符号“$” 变量名称 赋予变量的值简单的示例,假设你的按钮颜色可以给其声明几个变量: $brand-primary : darken(# ...

  8. SQL2008转SQL2005数据库经验

    1.用SQL2008创建兼容2005的结构脚本. 2.在2005中生成数据库结构. 3.利用2005中的数据导入直接从源数据库中导入数据,此处注意自增长标识的选项需要添加,多表优化选项可以去掉,这里不 ...

  9. 如何发布Web项目到互联网

    比如我们有个项目想要发布到互联网上,我们首先需要购买域名以及主机,主机的话,推荐云主机(本人推荐西部数码或者阿里云),性能好: 我们先在云主机上搭建环境,比如Mysql,Jdk,Tomcat: 然后我 ...

  10. 最近公共祖先:LCA及其用倍增实现 +POJ1986

    Q:为什么我在有些地方看到的是最小公共祖先? A:最小公共祖先是LCA(Least Common Ancestor)的英文直译,最小公共祖先与最近公共祖先只是叫法不同. Q:什么是最近公共祖先(LCA ...