当前位置: 首页 > news >正文

【Python】QT(PySide2、PyQt5):列表数据保存到文件,文件数据加载到列表

前一篇是列表视图QListView、模型QStandardItemModel、自定义委托(继承于QStyledItemDelegate),内容包含列表中右键可插入/追加/上移/下移/删除/清空数据、自定义委托中包含主文本前显示行号、主文本后有输入框可输入备注。

参考:【Python】列表视图、模型、自定义委托

本文在自定义委托的基础上,将列表数据保存到txt文件中,并从txt文件中加载数据到列表。

大致界面:

  • 一个日期选择器(QDateEdit):用于选择日期,并启用日历setCalendarPopup。默认为当天日期(PySide2.QtCore.QDate.currentDate()),
  • 两个按钮(QPushButton):分别用于添加数据,数据保存到文件,
  • 一个列表(QListView):用于展示数据。若双击修改后主文本和备注都为空则自动删除该行。
  • 附:双击修改数据,修改后自动检查,若主文本和备注都为空,自动删除改行。
from PySide2.QtWidgets import (QApplication, QMainWindow, QDateEdit, QListView,QPushButton)
from PySide2.QtGui import QStandardItemModel
from PySide2.QtCore import QDate
from adelegate import myDelegateclass mywindow(QMainWindow):def __init__(self):super().__init__()self.setWindowTitle("Date and File")self.setGeometry(300, 80, 750, 550)# 日期选择器self.dateedit = QDateEdit(self)self.dateedit.setCalendarPopup(True)self.dateedit.setDate(QDate.currentDate())self.dateedit.dateChanged.connect(self.showdata)self.dateedit.setGeometry(50, 20, 150, 30)# 添加新项的按钮self.appendbtn = QPushButton("Append data", self)self.appendbtn.clicked.connect(self.appenditem)self.appendbtn.setGeome
http://www.dtcms.com/a/351961.html

相关文章:

  • QT(QTableWidget)
  • Matlab使用——开发上位机APP,通过串口显示来自单片机的电压电流曲线,实现光伏I-V特性监测的设计
  • 盲盒一番赏小程序:打造个性化潮玩购物天堂
  • vs2022 Nuget包缓存下载路径配置
  • 国产机安装caj 国产机没法打开caj文件,国产机如何看论文?
  • AIGC(生成式AI)试用 35 -- AI Agent开发及工作流,LangFlow
  • github拉取OpenSSL SSL_read: Connection was reset, errno 10054
  • Element中table组件(el-table)右侧滚动条空白占位gutter处理
  • window电脑使用OpenSSL创建Ed25519密钥
  • 由倍讯科技研制的CCLinkIE转ModbusTCP网关,可达成与脉冲计数器的连接
  • Tesseract OCR之单词识别与字符分类器
  • Docker:部署Redis
  • 常见flex布局思路:flex布局上下结构
  • 2025中国生物制造科技创新论坛为何“花落”常德?
  • 新源布料厂进销存管理系统-项目分享
  • week5-[字符数组]查找
  • 木马免杀工具使用
  • 智汇云舟:视频孪生技术引领行业变革的场景应用实践
  • 第二十三天-FSMC简介
  • 技术速递|Model Context Protocol (MCP) 支持已上线 JetBrains、Eclipse 和 Xcode
  • 计算机网络:天气预报
  • SpringBoot + Redisson 实现分布式锁实战(附业务案例)
  • 【系统架构设计(一)】系统工程与信息系统基础上:系统工程基础概念
  • 29.RNN-循环神经网络
  • 微信小游戏订阅功能
  • 【SQL】深入理解MySQL存储过程:MySQL流程控制语句详解
  • SQL server 触发器的使用
  • PostgreSQL诊断系列(4/6):表空间与膨胀分析——解决“越用越大”的存储难题
  • woocommerce后台一次搜索多个ID订单的实现方法
  • 两周年创作纪念,忆笑傲江湖岁月