PyQt5中向单元格添加控件的方法示例
作者:放大的EZ 发布时间:2023-10-20 05:08:48
标签:PyQt5,单元格,控件
1、简介
pyqt 列表 单元格中 不仅可以添加数据,还可以添加控件。
我们尝试添加下拉列表、一个按钮试试。
setItem:将文本放到单元格中
setCellWidget:将控件放到单元格中
setStyleSheet:设置控件的样式(Qt StyleSheet)
2、功能实现
# -*- coding: utf-8 -*-
'''
【简介】
PyQT5中 单元格里面放控件
'''
import sys
from PyQt5.QtWidgets import (QWidget, QTableWidget, QHBoxLayout, QApplication, QTableWidgetItem, QAbstractItemView,
QComboBox, QPushButton)
class Table(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("QTableWidget 例子")
self.resize(430, 300)
conLayout = QHBoxLayout() # 创建水平布局文件
tableWidget = QTableWidget() # 创建一个列表
tableWidget.setRowCount(4) # 设置行数
tableWidget.setColumnCount(3) # 设置列数
conLayout.addWidget(tableWidget) # 添加列表到布局
tableWidget.setHorizontalHeaderLabels(['姓名', '性别', '体重(kg)']) # 设置水平表头
newItem = QTableWidgetItem("张三") # 添加张三 到(0,0)
tableWidget.setItem(0, 0, newItem)
comBox = QComboBox() # 新建一个下拉组件
comBox.addItem("男")
comBox.addItem("女")
comBox.setStyleSheet("QComboBox{margin:3px};")
comBox.currentIndexChanged.connect(self.comboxSelect) #绑定combox select 事件
tableWidget.setCellWidget(0, 1, comBox) # 添加下拉组件到列表(0,1)
searchBtn = QPushButton("修改") # 新建一个按钮
searchBtn.setDown(True)
searchBtn.setStyleSheet("QPushButton{margin:3px};")
searchBtn.clicked.connect(self.butClick) #绑定按钮点击事件
tableWidget.setCellWidget(0, 2, searchBtn) # 添加按钮到列表(0,2)
self.setLayout(conLayout)
def comboxSelect(self,index):
print("combox select index",index)
def butClick(self):
print("button click")
if __name__ == '__main__':
app = QApplication(sys.argv)
example = Table()
example.show()
sys.exit(app.exec_())
文件参考:PyQt 快速开发与实践
来源:https://blog.csdn.net/qq_27061049/article/details/89875503
0
投稿
猜你喜欢
- 前言本文将记录学习基于 Socket 通信机制建立 TCP 反向连接,借助 Python 脚本实现主机远程控制的目的。我们在传输数据时,可以
- 1下载安装1.1打开官网http://www.jetbrains.com/pycharm/download/耐心等待,大概200M,几分钟左
- 前言写这次博客其实事出有因,前几天呢,一个非常优秀的学姐在QQ空间里晒了自己的CSDN博客的总阅读量,达到了7万+,很厉害了,而且确实她的博
- 一. 代码使用Python+Splinter开发,Splinter是一个使用Python开发的开源Web应用测试工具,它可以帮你实
- python3 在服务器上打印资产信息pip3 install prettytableurl 为 资产信息接口地址,返回为json信息。#
- 引言Python 是一个强大的语言,提供了许多内置函数以帮助开发者编写高效、简洁的代码。在这篇文章中,我们将深入探讨三个内置函数:map、f
- 因为python打包的时候需要用到ico图片格式,网上看好的图片又没有ico,于是自己寻找了一下python转换图片格式的方法,彻底解决这个
- 开放源代码社区为了扩展MySQL的使用范围,开发出了.Net框架(.NET Framework)中可以使用的数据库连接器。我们就来学习一下如
- 这篇文章主要给大家介绍了关于Django跨域请求问题解决的相关资料,文中介绍的实现方法包括:使用django-cors-headers全局控
- 目录1、分布式事务2、SAGA3、SAGA 实践4、处理网络异常5、处理回滚6、小结银行跨行转账业务是一个典型分布式事务场景,假设 A 需要
- “博客就像一本书”这话其实几个月前深圳FB时就有扯到,这也不是什么新概念,也许本身就应该是这样。打个比方,当你拿到一本未看过的书时,理论上你
- 本文实例讲述了Python3.6基于正则实现的计算器。分享给大家供大家参考,具体如下:# -*- coding:utf-8 -*-#!pyt
- 1.现在我本机系统已内置python2.62.下载进行源码安装复制链接下载到/root/mypackage,解压接着mkdir /usr/l
- 当然可以,我们使用强大的fso对象来获取文件夹的大小请敲入如下代码即可:<%Set MyFileSize =&nb
- 本文实例为大家分享了Python实现打砖块游戏的具体代码,供大家参考,具体内容如下#导入模块import pygamefrom pygame
- Flask 本身相当于一个内核,比如可以用 Flask 扩展加入ORM、窗体验证工具,文件上传、身份验证等。Flask 没有默认使用的数据库
- 可在图片连接后面加上宽和高,如:width="150" height="50"<h
- Python打包分发工具setuptools:曾经 Python 的分发工具是 distutils,但它无法定义包之间的依赖关系。setup
- 当我们建立一个数据库时,并且想将分散在各处的不同类型的数据库分类汇总在这个新建的数据库中时,尤其是在进行数据检验、净化和转换时,将会面临很大
- text-overflow这个属性真让Firefox折腾,虽然之前有写过Firefox通过XUL实现text-overflow:ellips