PyQt4 精彩实例分析* 实例7 表格的使用

2023-11-17

制作统计软件时经常会使用表格将资料列出,或是通过表格进行资料的设置,在Qt中可以使用QTableWidget实现一个表格。本实例演示如何使用表格,并在表格中嵌入控件。如下图所示为“表格的使用”对话框。


QTableWidget类提供了一个灵活的和可编辑的表格控件,包含很多API,可以处理标题,行列,单元格和选中区域,QTableWidget可以嵌入编辑框或显示控件,并可通过拖动控制柄调节各单元格的大小。表格的每一项可以定义成不同的属性,可以显示文本,也可以插入控件,这样给表格的使用带来了很好的扩展性。

本实例的实现代码如下:

# -*- coding: utf-8 -*-   
from PyQt4.QtGui import *  
from PyQt4.QtCore import *  
import sys  
  
QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))  
   
class MyTable(QTableWidget):  
    def __init__(self,parent=None):  
        super(MyTable,self).__init__(parent)  
        self.setColumnCount(5)  
        self.setRowCount(2)  
        self.setItem(0,0,QTableWidgetItem(self.tr("性别")))  
        self.setItem(0,1,QTableWidgetItem(self.tr("姓名")))  
        self.setItem(0,2,QTableWidgetItem(self.tr("出生日期")))  
        self.setItem(0,3,QTableWidgetItem(self.tr("职业")))  
        self.setItem(0,4,QTableWidgetItem(self.tr("收入")))  
        lbp1=QLabel()  
        lbp1.setPixmap(QPixmap("image/4.gif"))  
        self.setCellWidget(1,0,lbp1)  
        twi1=QTableWidgetItem("Tom")  
        self.setItem(1,1,twi1)  
        dte1=QDateTimeEdit()  
        dte1.setDateTime(QDateTime.currentDateTime())  
        dte1.setDisplayFormat("yyyy/mm/dd")  
        dte1.setCalendarPopup(True)  
        self.setCellWidget(1,2,dte1)  
        cbw=QComboBox()  
        cbw.addItem("Worker")  
        cbw.addItem("Famer")  
        cbw.addItem("Doctor")  
        cbw.addItem("Lawyer")  
        cbw.addItem("Soldier")  
        self.setCellWidget(1,3,cbw)  
        sb1=QSpinBox()  
        sb1.setRange(1000,10000)  
        self.setCellWidget(1,4,sb1)  
    
app=QApplication(sys.argv)  
myqq=MyTable()  
myqq.setWindowTitle("My Table")  
myqq.show()  
app.exec_()  

第18-20行在表格中插入一个QLabel控件,并设置QLabel的图形属性。

第21-22行设置表格单元的属性为文本显示。

第23-27行在表格中插入一个QDateTimeEdit控件,该控件可以编辑日期时间,setCalendarPopup()方法设置是否弹出日历编辑器。

第28-34行在表格中插入一个QComboBox控件,调用QTableWidget的setCellWidget()函数可在某个指定的表格单元格中插入一个控件,函数的前两个参数用于指定单元格的行,列号。

第35-37行在表格中插入一个QSpinBox控件。





本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PyQt4 精彩实例分析* 实例7 表格的使用 的相关文章

  • 如何在Python的SciPy中更改稀疏矩阵中的元素?

    我构建了一个小代码 我想用它来解决涉及大型稀疏矩阵的特征值问题 它工作正常 我现在要做的就是将稀疏矩阵中的一些元素设置为零 即最顶行中的元素 对应于实现边界条件 我可以调整下面的列向量 C0 C1 和 C2 来实现这一点 不过我想知道是否有
  • Mac OS 上的诗歌安装失败,显示“should_use_symlinks”

    我正在尝试使用以下命令安装诗歌 curl sSL https install python poetry org python3 但它失败了 但有以下例外 例外 此版本的 python 无法在不使用符号链接的情况下创建 venvs 下面是详
  • scipy 将一个稀疏矩阵的所有行附加到另一个稀疏矩阵

    我有一个 numpy 矩阵 想在其中附加另一个矩阵 这两个矩阵的形状为 m1 shape 2777 5902 m2 shape 695 5902 我想将 m2 附加到 m1 以便新矩阵的形状为 m new shape 3472 5902 当
  • 使用 matplotlib 从“列表列表”绘制 3D 曲面

    我已经搜索了一些 虽然我可以找到许多有用的网格网格示例 但没有一个清楚地表明我如何将列表列表中的数据转换为可接受的形式 以适应我所讨论的各种方式 当谈到 numpy matplotlib 以及我所看到的建议的术语和步骤顺序时 我有点迷失 我
  • Twisted 的 Deferred 和 JavaScript 中的 Promise 一样吗?

    我开始在一个需要异步编程的项目中使用 Twisted 并且文档非常好 所以我的问题是 Twisted 中的 Deferred 与 Javascript 中的 Promise 相同吗 如果不是 有什么区别 你的问题的答案是Yes and No
  • 如何在python 3.7中生成条形码

    我正在使用 python 3 7 为了生成条形码 我尝试使用安装 pyBarcode 库pip install pyBarcode 但它显示以下错误 找不到满足 pyBarcode 要求的版本 来自版本 找不到 pyBarcode 的匹配分
  • 补丁 - 为什么相对补丁目标名称不起作用?

    我已经从模块导入了一个类 但是当我尝试修补类名而不使用模块作为前缀时 出现类型错误 TypeError Need a valid target to patch You supplied MyClass 例如 以下代码给出了上述错误 imp
  • sklearn 中的 pca.inverse_transform

    将我的数据拟合后 X 我的数据 pca PCA n components 1 pca fit X X pca pca fit transform X 现在 X pca 具有一维 当我根据定义执行逆变换时 它不是应该返回原始数据 即 X 二维
  • 在没有模型的情况下将自定义页面添加到 django admin

    我正在尝试在没有模型关联的情况下向管理员添加自定义页面 这就是我迄今为止所取得的成就 class MyCustomAdmin AdminSite def get urls self from django conf urls import
  • 在 Windows 上使用 apache mod_wsgi 运行 Flask 应用程序时导入冲突

    我允许您询问我在 Windows 上使用您的 mod wsgi portage 托管 Flask 应用程序时遇到的问题 我有两个烧瓶应用程序 由于导入冲突 只有一个可以同时存在 IE 如果请求申请 1 我有回复 然后 如果我请求应用程序 2
  • Tensorflow 与 Keras 的兼容性

    我正在使用 Python 3 6 和 Tensorflow 2 0 并且有一些 Keras 代码 import keras from keras models import Sequential from keras layers impo
  • 使用Python计算目录的大小?

    在我重新发明这个特殊的轮子之前 有没有人有一个很好的例程来使用 Python 计算目录的大小 如果例程能够很好地以 Mb Gb 等格式格式化大小 那就太好了 这会遍历所有子目录 总结文件大小 import os def get size s
  • 使用 Keras np_utils.to_categorical 的问题

    我正在尝试将整数的 one hot 向量数组制作为 keras 将能够使用的 one hot 向量数组来拟合我的模型 这是代码的相关部分 Y train np hstack np asarray dataframe output vecto
  • 返回表示每组内最大值的索引的一系列数字位置

    考虑一下这个系列 np random seed 3 1415 s pd Series np random rand 100 pd MultiIndex from product list ABDCE list abcde One Two T
  • 在 keras 中保存和加载权重

    我试图从我训练过的模型中保存和加载权重 我用来保存模型的代码是 TensorBoard log dir output model fit generator image a b gen batch size steps per epoch
  • Anaconda 无法导入 ssl 但 Python 可以

    Anaconda 3 Jupyter笔记本无法导入ssl 但使用Atom终端导入ssl没有问题 我尝试在 Jupyter 笔记本中导入 ssl 但出现以下错误 C ProgramData Anaconda3 lib ssl py in
  • SocketIO + Flask 检测断开连接

    我在这里有一个不同的问题 但意识到它可以简化为 如何检测客户端何时从页面断开连接 关闭其页面或单击链接 换句话说 套接字连接关闭 我想制作一个带有更新用户列表的聊天应用程序 并且我在 Python 上使用 Flask 当用户连接时 浏览器发
  • Django 与谷歌图表

    我试图让谷歌图表显示在我的页面上 但我不知道如何将值从 django 视图传递到 javascript 以便我可以绘制图表 姜戈代码 array Year Sales Expenses 2004 1000 400 2005 1170 460
  • 如何根据第一列创建新列,同时考虑Python Pandas中字母和列表的大小? [复制]

    这个问题在这里已经有答案了 我在 Python Pandas 中有 DataFrame 如下所示 col1 John Simon prd agc Ann White BeN and Ann bad list Ben Wayne 我需要这样做
  • 使用ssl和socket的python客户端身份验证

    我有一个 python 服务器 需要客户端使用证书进行身份验证 我如何制作一个客户端脚本 使用客户端证书由 python 中的服务器使用 ssl 和套接字模块进行身份验证 有没有仅使用套接字和 ssl 而不扭曲的示例 from OpenSS

随机推荐

  • CSPNET: A NEW BACKBONE THAT CAN ENHANCE LEARNING CAPABILITY OF CNN

    摘要 本文从网络体系结构的角度出发 提出了跨阶段局部网络 CSPNet 来解决以往工作中需要大量推理计算的问题 本文将问题归结为网络优化中的重复梯度信息 所提出的网络通过从网络阶段的开始和结束集成特征映射来注重梯度的可变性 CSPNet易于
  • Flink常用算子总结

    Streaming 算子 Map 将元素处理转换 再输出 map算子对一个DataStream中的每个元素使用用户自定义的Mapper函数进行处理 每个输入元素对应一个输出元素 最终整个数据流被转换成一个新的DataStream 输出的数据
  • 2020年黑苹果硬件配置推荐

    前言 黑苹果硬件配置推荐是一件众口难调的事情 但是为了更多的苹果Mac爱好者能够早日开心顺利的使用上macOS系统 mac996站长还是会200 的努力做好这件事情 也请大家大家多给一些支持和鼓励 注 本文仅针对黑苹果台式机做硬件推荐 不涉
  • 协同过滤算法的一些报错及python函数学习

    文章目录 1 cannot import name jaccard similarity score 2 DataFrame object has no attribute dtype 3 sort values 4 sort index
  • 2023前端面试题及答案整理(JS笔试题)

    JS笔试题 JS类型相关 typeof 没定义的变量会报错吗 typeof let定义了的呢 未声明的变量使用 typeof 返回字符串 undefined typeof 一个 let 定义的变量会因为暂时性死区报错 前提 let cons
  • go语言面试题

    文章目录 1 下面这段代码输出什么 2 下面代码输出什么 3 同级文件的包名不允许有多个 是否正确 4 下面的代码有什么问题 请说明 1 下面这段代码输出什么 func main count 0 for i range 256 struct
  • webpack 学习笔记(二) 打包 AMD模块时 js路径错误

    在使用webpack打包模块的时候遇到的问题 各种百度一直无法解决这个问题 真的对新手太不友好了 webpack 作为 一个模块打包工具 它可以将AMD CMD CommonJs ES6 模块都进行打包 这里推荐一个讲解模块比较详细的博客
  • 华为机考108题(c++)(1-16)

    HJ1 字符串最后一个单词的长度 描述 计算字符串最后一个单词的长度 单词以空格隔开 字符串长度小于5000 注 字符串末尾不以空格为结尾 输入描述 输入一行 代表要计算的字符串 非空 长度小于5000 输出描述 输出一个整数 表示输入字符
  • C语言算法--冒泡排序

    C语言算法 冒泡排序 1 什么是冒泡排序 冒泡排序是一种简单的排序算法 它通过比较相邻元素的大小 并根据需要交换它们的位置来排序数据 它的名称来自于越小的元素会慢慢 冒泡 到数组的开头 冒泡排序的基本思想是从数组的第一个元素开始 依次比较相
  • 修改本机localhost映射dns解析

    去C Windows System32 drivers etc目录下找到hosts文件 进入修改 最后一行添加127 0 0 1 空格 写自己的域名映射 增加后进入cmd命令行窗口输入ipconfig flushdns刷新dns解析 此后就
  • 开源微服务如何选型?Spring Cloud、Dubbo、gRPC、Istio 详细对比

    不论您是一名开发者 架构师 CTO 如果您曾深度参与在微服务开发中 那么相信您一定有过开源微服务框架或体系选型的疑问 Apache Dubbo Spring Cloud gRPC 以及 Service Mesh 体系产品如 Istio 到底
  • Vinted店铺为什么被封?如何应对?

    Vinted是一家在线二手交易平台 专门用于买卖衣物和时尚配件 自从2022年以来 Vinted也越来越向综合性跨境电商平台转变 细心的伙伴都会发现 近来Vinted这阵子封号确实很严重 感觉是风控变严格了 但是万变不离其宗 说到底封控还是
  • librdkafka编译及简单使用过程简介

    librdkafka 使用了 C 11 使用 VS2010 无法编译 需要使用更高版本的 VS 才能编译 我这里使用的是 VS2017 1 编译版本 编译环境 windows VS2017 openssl 版本 openssl 1 0 2t
  • VRTK——UI控制(点击按钮)

    1 Canvas必须带有VRTK UICanvas脚本 2 LeftControllerScriptAlias RightControllerScriptAlias必须有 VRTK ControllerEvents VRTK Pointer
  • 如何在 Python 和 Node.js 之间通信 JSON 数据?

    JSON 可以缩写为 JavaScript Object Notation 它是一个基于文本的文件 用于在编程语言中传输和存储数据 它由使用内置包即 JSON 的 python 编程语言支持 其文本以带引号的字符串格式给出 其中在大括号 中
  • git Bash上传本地项目到github

    首先登陆个人github账号新建一个仓库 新建好仓库后打开要上传的项目所在位置 右键文件夹 选择Git Bash Here 第一步 git init初始化 第二步 git add 添加到仓库 注 出现警告的话再输入一次 第三步 git co
  • 如何解决ImportError: cannot import name ‘BatchNormalization‘ from ‘keras.layers.normalization‘

    报错如下所示 其实就是版本的问题 改之前的代码 from keras layers normalization import BatchNormalization 改之后 from keras layers normalization ba
  • imx6ull驱动开发经验

    1 背景 imx6ull驱动开发基于正点原子的开发板 上面运行linux 4 1 15内核 根文件系统为ubuntu 16 05 5 LTS 2 加载驱动文件chrdevbase ko文件时 先使用depmod生成依赖文件时 提示无modu
  • 对利用Python爬取到的房价信息做数据可视化(附完整代码)

    大家好 我是带我去滑雪 每天教你一个小技巧 1 数据展示 本文利用Python爬取到的房价信息做数据可视化 爬取数据的文章见 利用Python爬取房价信息 附代码 用python爬取房价数据 带我去滑雪的博客 CSDN博客 所爬取的指标有小
  • PyQt4 精彩实例分析* 实例7 表格的使用

    制作统计软件时经常会使用表格将资料列出 或是通过表格进行资料的设置 在Qt中可以使用QTableWidget实现一个表格 本实例演示如何使用表格 并在表格中嵌入控件 如下图所示为 表格的使用 对话框 QTableWidget类提供了一个灵活