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的web框架中配置app的教程
Apr 30 Python
Python优化技巧之利用ctypes提高执行速度
Sep 11 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
Mar 20 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
Feb 22 Python
Flask模板引擎之Jinja2语法介绍
Jun 26 Python
OpenCV模板匹配matchTemplate的实现
Oct 18 Python
Tensorflow实现多GPU并行方式
Feb 03 Python
使用python实现CGI环境搭建过程解析
Apr 28 Python
numpy的Fancy Indexing和array比较详解
Jun 11 Python
解析Python 偏函数用法全方位实现
Jun 26 Python
Django启动时找不到mysqlclient问题解决方案
Nov 11 Python
聊聊pytorch测试的时候为何要加上model.eval()
May 23 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
关于Intype一些小问题的解决办法
2008/03/28 PHP
PHP源码之 ext/mysql扩展部分
2009/07/17 PHP
解析PHP中$_FILES的使用以及注意事项
2013/07/05 PHP
jQuery学习基础知识小结
2010/11/25 Javascript
JavaScript操纵窗口的方法小结
2013/06/28 Javascript
JS函数this的用法实例分析
2015/02/05 Javascript
创建一个类Person的简单实例
2016/05/17 Javascript
jQuery使用getJSON方法获取json数据完整示例
2016/09/13 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
Jquery中.bind()、.live()、.delegate()和.on()之间的区别详解
2017/08/01 jQuery
element-ui 关于获取select 的label值方法
2018/08/24 Javascript
详解vuex数据传输的两种方式及this.$store undefined的解决办法
2019/08/26 Javascript
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
2020/06/08 Javascript
解决vue cli4升级sass-loader(v8)后报错问题
2020/07/30 Javascript
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
Python中使用HTMLParser解析html实例
2015/02/08 Python
Python中关键字nonlocal和global的声明与解析
2017/03/12 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
python抓取网页内容并进行语音播报的方法
2018/12/24 Python
python中pygame安装过程(超级详细)
2019/08/04 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
2019/11/15 Python
设置jupyter中DataFrame的显示限制方式
2020/04/12 Python
关于Python解包知识点总结
2020/05/05 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
HTML5触摸事件演化tap事件介绍
2016/03/25 HTML / CSS
俄罗斯美容和健康网上商店:Созвездие Красоты
2019/07/23 全球购物
Guess欧洲官网:美国服饰品牌
2019/08/06 全球购物
学校庆元旦歌咏比赛主持词
2014/03/18 职场文书
成绩单公证书
2014/04/10 职场文书
重大事项社会稳定风险评估方案
2014/06/15 职场文书
合伙购房协议样本
2014/10/06 职场文书
四年级学生期末评语
2014/12/26 职场文书
高一地理教学工作总结
2015/08/12 职场文书
如何用python识别滑块验证码中的缺口
2021/04/01 Python
使用Django框架创建项目
2022/06/10 Python