PyQt5中向单元格添加控件的方法示例


Posted in Python onMarch 24, 2020

1、简介

pyqt 列表 单元格中 不仅可以添加数据,还可以添加控件。

我们尝试添加下拉列表、一个按钮试试。

PyQt5中向单元格添加控件的方法示例

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 快速开发与实践

到此这篇关于PyQt5中向单元格添加控件的方法示例的文章就介绍到这了,更多相关PyQt5 单元格添加控件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的filter()函数的用法
Apr 27 Python
python获取外网IP并发邮件的实现方法
Oct 01 Python
浅谈django model postgres的json字段编码问题
Jan 05 Python
python读取文本中数据并转化为DataFrame的实例
Apr 10 Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
Python3多线程基础知识点
Feb 19 Python
python快排算法详解
Mar 04 Python
python几种常用功能实现代码实例
Dec 25 Python
python openCV实现摄像头获取人脸图片
Aug 20 Python
Python模拟键盘输入自动登录TGP
Nov 27 Python
Python用摘要算法生成token及检验token的示例代码
Dec 01 Python
python cv2图像质量压缩的算法示例
Jun 04 Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 #Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 #Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 #Python
Python socket连接中的粘包、精确传输问题实例分析
Mar 24 #Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
Mar 24 #Python
Python+Appium实现自动化测试的使用步骤
Mar 24 #Python
Python3标准库之dbm UNIX键-值数据库问题
Mar 24 #Python
You might like
thinkphp数据查询和遍历数组实例
2014/11/28 PHP
PHP 魔术变量和魔术函数详解
2015/02/25 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
javascript一些不错的函数脚本代码
2008/09/10 Javascript
input按钮的事件处理大全
2010/12/10 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
javascript 获取HTML DOM父、子、临近节点
2014/06/16 Javascript
JavaScript兼容浏览器FF/IE技巧
2016/08/14 Javascript
js中的触发事件对象event.srcElement与event.target详解
2017/03/15 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
微信小程序实现添加手机联系人功能示例
2017/11/30 Javascript
vue+element-ui动态生成多级表头的方法
2018/08/28 Javascript
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
微信小程序可滑动周日历组件使用详解
2019/10/21 Javascript
python计算最小优先级队列代码分享
2013/12/18 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
浅谈Python的list中的选取范围
2018/11/12 Python
Python Pandas中根据列的值选取多行数据
2019/07/08 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
Python命令行参数定义及需要注意的地方
2020/11/30 Python
喜诗官方在线巧克力店:See’s Candies
2017/01/01 全球购物
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
爱奇艺VIP会员:大剧抢先看
2018/07/11 全球购物
屈臣氏菲律宾官网:Watsons菲律宾
2020/06/30 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
养殖项目策划书范文
2014/01/13 职场文书
地质灾害防治方案
2014/05/14 职场文书
会计岗位职责范本
2015/04/02 职场文书
面试通知短信
2015/04/20 职场文书
质量承诺书格式范文
2015/04/28 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
2019班干部竞选演讲稿范本!
2019/07/08 职场文书
2019年“我为祖国点赞”演讲稿(3篇)
2019/09/26 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python