Pyside6 &Pyside2使用QTreeWidget(树控件)点击使用方法

QTreeWidget实现点击效果:

QTreeWidget实现的简单的点击效果如下:
请添加图片描述


实现方法:

QTreeWidget继承关系:QTreeWidget---->QTreeView---->QAbstractItemView下的clicked方法

class QTreeWidget(QTreeView)---->class QTreeView(QAbstractItemView)---->class QAbstractItemView(QAbstractScrollArea)

在这里插入图片描述

代码如下:

# -*- coding:utf-8 -*-
################################################################################
##
# # Design Main Windows
# # BY: 扣脚大汉
# # PROJECT MADE WITH: Qt Designer and PySide6
# # V: 1.0.0
##
################################################################################
from PySide6.QtWidgets import QMainWindow, QButtonGroup
from PySide6 import QtWidgets
from PySide6.QtCore import Signal
import sys
from ui_main import Ui_MainWindow  # 导入主窗口的UI代码


class MainWindow(QMainWindow):
    main_Signal = Signal(str)
    def __init__(self):
        QMainWindow.__init__(self)
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.intiUi()

    # # 初始化点击事件
    # # QTreeWidget继承关系:QTreeWidget---->QTreeView---->QAbstractScrollArea下的clicked方法
    ########################################################################
    def intiUi(self):
        self.ui.mytree.clicked.connect(self.mytreeClicked)

    # # 使用QTreeWidget类下面的currentItem方法获取当前的点击的树控件
    ########################################################################
    def mytreeClicked(self):
        item = self.ui.mytree.currentItem()
        self.ui.output.append(item.text(0))


if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    root = MainWindow()
    root.show()
    sys.exit(app.exec())

UI转换成的ui_main.py代码:

# -*- coding: utf-8 -*-

################################################################################
## Form generated from reading UI file 'ui_main.ui'
##
## Created by: Qt User Interface Compiler version 6.2.1
##
## WARNING! All changes made in this file will be lost when recompiling UI file!
################################################################################

fr
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在PySide2QTreeWidget控件中添加文件图标,您可以使用QIcon类来设置项目的图标。QIcon类是Qt中用于表示图标的类。 首先,您需要准备一些文件图标的图像文件,例如PNG或SVG格式的图像。确保这些图像文件与您的Python脚本位于同一目录下。 然后,您可以使用QIcon.fromTheme()函数来加载操作系统主题中定义的标准文件图标。这样可以确保您的应用程序在不同平台和主题下都能正确显示合适的文件图标。 以下是一个示例代码,演示了如何使用PySide2QTreeWidget形视图中添加文件图标: ```python from PySide2.QtWidgets import QApplication, QMainWindow, QTreeWidget, QTreeWidgetItem from PySide2.QtGui import QIcon def main(): # 创建应用程序对象 app = QApplication([]) # 创建主窗口 window = QMainWindow() # 创建形小部件 tree_widget = QTreeWidget() # 设置形视图的列数 tree_widget.setColumnCount(1) # 创建根项目 root_item = QTreeWidgetItem(tree_widget) root_item.setText(0, "Root") root_item.setIcon(0, QIcon.fromTheme("folder")) # 设置文件夹图标 # 创建子项目 child_item = QTreeWidgetItem(root_item) child_item.setText(0, "Child") child_item.setIcon(0, QIcon.fromTheme("text-x-python")) # 设置Python文件图标 # 将形小部件设置为主窗口的中心部件 window.setCentralWidget(tree_widget) # 显示主窗口 window.show() # 运行应用程序的主循环 app.exec_() if __name__ == "__main__": main() ``` 在上述示例中,我们使用了`QIcon.fromTheme()`函数来加载操作系统主题中定义的标准图标。这里我们设置了一个文件夹图标和一个Python文件图标作为示例。您可以根据需要设置其他图标,只需提供对应的图像文件路径即可。 请注意,`QIcon.fromTheme()`函数可能会返回一个空的图标对象,如果找不到对应的主题图标。在这种情况下,您可以使用`QIcon`的其他构造函数来加载自定义图标文件。 希望这个示例能对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扣脚&&大汉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值