当前位置:首页 » 《随便一记》 » 正文

Windows环境下使用Python设计应用软件——【6】pyqt通过勾选框选择对TableWidget表格数据进行添加/删减_红枫林

15 人参与  2022年05月18日 12:34  分类 : 《随便一记》  评论

点击全文阅读


PS:本文主要用于自我整理总结,方便后续参考,如果恰好帮助到你,也是件值得高兴的事
先展示下这次实现的具体功能:
在这里插入图片描述
具体程序如下:

import os
import sys

from PyQt5 import QtWidgets, QtCore
from PyQt5.QtCore import Qt, QRect
from PyQt5.QtWidgets import QMainWindow, QApplication, QPushButton, QWidget, QTableWidgetItem

from untitled import Ui_MainWindow  # 导入设计界面


# 设计的弹窗
class smallWindow(QWidget):
    def __init__(self):
        super(smallWindow, self).__init__()
        self.resize(100, 100)  # 窗体的大小(宽,高)
        self.setWindowTitle("我是弹窗")  # 窗体的标题
        self.setWindowFlags(Qt.WindowTitleHint)  # 显示窗口标题栏(这样写出来要什么,就可以将右上角的按钮去掉)
        self.pushButton = QPushButton(self)  # 在弹窗中定义一个按钮控件
        self.pushButton.setGeometry(QRect(30, 30, 40, 40))  # 参数含义:(横坐标【即离左边框的距离】,纵坐标【即离上边框的距离】,控件的宽,控件的高)
        self.pushButton.setText('确定')


class mainWindow(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(mainWindow, self).__init__()
        self.setupUi(self)  # 初始化窗口

        self.pushButton.clicked.connect(self.openWindow)  # 将点击控件的动作和跳出弹窗的功能函数相连接
        self.checkBox_1.stateChanged.connect(self.check_1)  # 勾选动作和函数的连接
        self.checkBox_2.stateChanged.connect(self.check_2)
        self.checkBox_3.stateChanged.connect(self.check_3)

        self.tablelist = []  # 存放勾选的数据

    # 弹窗函数
    def openWindow(self):
        self.smallWindow_ui = smallWindow()
        self.smallWindow_ui.show()
        self.smallWindow_ui.pushButton.clicked.connect(self.smallWindow_ui.close)  # 点击按钮可以关闭窗口

    # 勾选函数
    def check_1(self, state):
        if state == Qt.Checked:  # 勾选的话
            self.tablelist.append('一')
            self.table()  # 更新表格
        else:
            self.tablelist.remove('一')
            self.table()

    def check_2(self, state):
        if state == Qt.Checked:
            self.tablelist.append('二')
            self.table()
        else:
            self.tablelist.remove('二')
            self.table()

    def check_3(self, state):
        if state == Qt.Checked:
            self.tablelist.append('三')
            self.table()
        else:
            self.tablelist.remove('三')
            self.table()

    # 对表格的功能函数
    def table(self):
        self.tableWidget.clearContents()  # clearContents这个清空所有内容不包括标题头; clear清空掉表格内所有内容,包括标题头
        self.tableWidget.setRowCount(len(self.tablelist))  # 根据勾选的数目来设置行数
        self.tableWidget.setColumnCount(1)  # 设置列数
        self.tableWidget.setHorizontalHeaderLabels(['勾选的数'])  # 设置表格的表头
        num = 0
        for content in self.tablelist:  # 将tablelist中的元素依次写进表格中
            table_content = QTableWidgetItem(content)  # 将str类型变量转化,生成了一个QTableWidgetItem的对象
            self.tableWidget.setItem(num, 0, table_content)  # 列表填写内容,参数含义(行数,列数,内容)
            num += 1


if __name__ == "__main__":
    app = QApplication(sys.argv)
    ui = mainWindow()
    ui.show()
    sys.exit(app.exec_())

点击全文阅读


本文链接:http://zhangshiyu.com/post/40370.html

勾选  函数  表格  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 谢承钧小说整本+后续(穿成佛子的恶毒后妈)清爽版阅读
  • 你惹她干啥她疯起来嘎乱杀结局+番外+完结(楚瑶)全书浏览_你惹她干啥她疯起来嘎乱杀结局+番外+完结全书浏览
  • 清冷逆徒动情后,反派师尊被缠哭(洛凝墨寒砚)_清冷逆徒动情后,反派师尊被缠哭
  • 高考分数出来那天,全家哭着求我原谅后续+番外_何思涵妹妹何思墨未删减_小说后续在线阅读_无删减免费完结_
  • 婚礼前夜未婚夫喂我安眠药,只为让养妹当新娘独家番外_许绍宁养妹全文_小说后续在线阅读_无删减免费完结_
  • 以身入局,我要掀翻这座城的天结局+番外+续集(程少云阮朵)_以身入局,我要掀翻这座城的天结局+番外+续集(程少云阮朵)
  • 出狱后,真千金手撕白莲杀疯了全文免费阅读无弹窗大结局_秦季姜沁最新章节列表_笔趣阁(出狱后,真千金手撕白莲杀疯了:完结+结局+番外)
  • 似锦的夫君停妻另娶挚友遗孀后,我杀疯了贺朝朝贺凌洲全书在线
  • 今夜雨将至(安佩项齐晟)_今夜雨将至
  • 暗恋逢光(江司聿夏未央)全书浏览_暗恋逢光全书浏览
  • 全文季总他图谋已久列表(秦韵季野)列表_全文季总他图谋已久列表
  • 重回高考前一天,我不再阻止同学们去参加班花组织的成人礼高口碑_林绾绾绾孟瑶故事会_小说后续在线阅读_无删减免费完结_

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1