Pyqt5 修改表格排序箭头

news/2024/11/20 7:16:13/文章来源:https://www.cnblogs.com/tarzen213/p/18432558

实现效果:

image

代码

from chatgpt

import sys
from PyQt5.QtWidgets import QApplication, QTableWidget, QTableWidgetItem, QVBoxLayout, QWidget
from PyQt5.QtCore import Qtclass TableDemo(QWidget):def __init__(self):super().__init__()# 创建表格self.table_widget = QTableWidget()# 设置行和列数self.table_widget.setRowCount(3)self.table_widget.setColumnCount(3)# 设置表格头部self.table_widget.setHorizontalHeaderLabels(["Name", "Age", "Country"])# 插入数据self.table_widget.setItem(0, 0, QTableWidgetItem("Alice"))self.table_widget.setItem(0, 1, QTableWidgetItem("30"))self.table_widget.setItem(0, 2, QTableWidgetItem("USA"))self.table_widget.setItem(1, 0, QTableWidgetItem("Bob"))self.table_widget.setItem(1, 1, QTableWidgetItem("25"))self.table_widget.setItem(1, 2, QTableWidgetItem("Canada"))self.table_widget.setItem(2, 0, QTableWidgetItem("Charlie"))self.table_widget.setItem(2, 1, QTableWidgetItem("35"))self.table_widget.setItem(2, 2, QTableWidgetItem("UK"))# 启用排序功能self.table_widget.setSortingEnabled(True)# 自定义表头排序箭头样式self.table_widget.setStyleSheet("""QHeaderView::section {background-color: lightgray;padding: 4px;border: 1px solid gray;}QHeaderView::up-arrow {width: 6px;height: 6px;image: url(升序.png);  /* 使用自定义的图片替换 */padding-right: 10px;  /* 调整箭头右侧的间距 */}QHeaderView::down-arrow {width: 6px;height: 6px;image: url(排序.png);  /* 使用自定义的图片替换 */padding-right: 10px;  /* 调整箭头右侧的间距 */}""")# 布局layout = QVBoxLayout()layout.addWidget(self.table_widget)self.setLayout(layout)# 设置窗口标题self.setWindowTitle("Table with Custom Sorting Arrow Style")if __name__ == "__main__":app = QApplication(sys.argv)demo = TableDemo()demo.show()sys.exit(app.exec_())

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/803760.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day7[XTuner 微调个人小助手认知任务]

微调前用 internlm2-chat-1_8b 模型,通过 QLoRA 的方式来微调一个自己的小助手认知作为案例来进行演示

【算法】笔试题记录

哇今天做了道特别有意思的题。 编程就给了两道,第一题特别简单,a、b两个数,每次选其中一个数*2,这样操作两次,问最后得到的两数之和的期望值是多少。 简单吧?因为每次选择都有两种可能性,操作两次后就会有四种可能的结果(22)。其中有两个结果是重复的(2a, 2b),剩下两个…

使用AI进行需求分析的案例研究

生成式 AI 的潜在应用场景似乎无穷无尽。虽然这令人兴奋,但也可能让人不知所措。因此,团队在使用这项技术时需要有明确的目标:关键是要明确生成式 AI 在团队工作中能产生哪些实质性影响。 在软件工程中,一个引人注目的应用场景是需求分析。这是一个常常被忽视但充满挑战的环…

02 第三组(4个)进制转换

进制转换:二进制,十六进制、八进制、十进制 bin 二进制 oct 8进制 hex 十六进制 int 10进制二进制 和十进制#10进制转二进制 v1 = bin(48) print(v1)#二进制转10进制 v1 = 0b1010101 v2 = int(v1, base=2)八进制 和十进制#10进制转八进制 v1 = oct(48) print(v1)#八进制转1…

实验1_C语言输入输出和简单程序应用编程

任务一 1-1#include<stdio.h> int main() { printf(" O "); printf("<H>"); printf("I I"); printf(" O "); printf("<H>"); printf("I I"); return 0; }1-2#include<stdio.h> int main(…

2023-9-25

vscode快捷键实操练习

操作流程违规作业监测系统

操作流程违规作业监测系统基于计算机视觉深度学习技术,操作流程违规作业监测系统对石油煤矿化工等高危场景下作业人员未按照操作流程进行正常操作行为进行实时分析识别检测,如操作流程违规作业监测系统发现现场人员违规作业操作行为,不需人为干预,立即自动抓拍存档预警并同…

01 本地代码推送到码云

访问网站根据提示进行注册即可 https://gitee.com/新建仓库 注册后,进行登录,在右上角查看创建的代码仓库如果要分享别人,进行上传代码,将:https://gitee.com/jhchena/test.git 分享给别人即可 欢乐马 / test 中的test 表示在码云上面,创建存放代码的文件夹本地进行配置码云 先…

macOS 中如何调整 OBS 录制视频的窗口大小 All In One

macOS 中如何调整 OBS 录制视频的窗口大小 All In One 在 OBS 的预览界面中,按住 Option / Alt 键, 拖动红色的四个方向控制块, 动态调整所需录制的窗口大小!✅ PS: 使用 m3u8 文件的 ts 格式视频无法下载的一种视频下载的替代方案!(需后期视频剪辑)macOS 中如何调整 OBS…

9-12

9段好的,我会逐句翻译并解释其中的关键词汇及其发音。 1. **There are, of course, people belonging to all classes who do not want to be fascinated and then enslaved by Admass, and who if necessary are ready to make a few sacrifices, largely material, to achie…

“人民冻凉”简介

账号定位: 这是一个由 复旦大学 的学生运营的 非官方自媒体账号 。 它最大的标签就是 复旦。 其次是复旦附带的的 \(985\)、江浙沪、上海交大、清北华五 这类的 \(\text{tag}\) 。 可以简单理解为,这是一个上海版的 全元光滑 。但实际上,考虑到两者的差异,在很多地方与全元…

02 深浅拷贝关于 str int bool

深浅拷贝 list /set /dict 一层