PyQt5 QListWidget-添加额外的滚动条

下面是关于PyQt5 QListWidget添加额外的滚动条的完整使用攻略。

一、QListWidget简介

QListWidget是Qt中的一个控件类,用于展示一个列表。在PyQt5中,也可以使用QListWidget来展示一个列表。

QListWidget具备以下特点:

  • 展示列表形式数据;
  • 提供额外的选项,如图标、文本;
  • 自身不具备滚动功能,当问列表数据过多时,需要使用QScrollArea等其他控件来提供相应的滚动条。

二、添加额外滚动条

QListWidget自身不带滚动条,需要使用QScrollArea等其他控件来提供。下面简要介绍在PyQt5中如何使用QScrollArea来提供滚动条。

1. 方法一:使用QScrollArea

下面是一个QListWidget使用QScrollArea提供垂直滚动条。你可以尝试运行代码来查看具体实现。

import sys
from PyQt5.QtWidgets import QApplication, QListWidget, QListWidgetItem, QScrollArea, QWidget
from PyQt5.QtCore import Qt


class ListExample(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setGeometry(300, 300, 350, 250)
        self.setWindowTitle('QListWidget')

        # 新建列表控件
        qlist = QListWidget(self)
        qlist.resize(300,120)
        qlist.addItem('Item 1')
        qlist.addItem('Item 2')
        qlist.addItem('Item 3')
        qlist.addItem('Item 4')
        qlist.addItem('Item 5')
        qlist.addItem('Item 6')
        qlist.addItem('Item 7')
        qlist.addItem('Item 8')
        qlist.addItem('Item 9')

        # 新建滚动条控件,将列表控件添加到滚动条中
        scroll = QScrollArea(self)
        scroll.setWidget(qlist)
        scroll.setGeometry(30,60,300,120)
        scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)

        self.show()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = ListExample()
    sys.exit(app.exec_())   

2. 方法二:直接给QListWidget添加滚动条

下面是一个使用QListWidget自带的滚动条的示例。你可以尝试运行代码来查看具体实现。

import sys
from PyQt5.QtWidgets import QApplication, QListWidget, QListWidgetItem, QWidget
from PyQt5.QtCore import Qt


class ListExample(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setGeometry(300, 300, 350, 250)
        self.setWindowTitle('QListWidget')

        # 新建列表控件
        qlist = QListWidget(self)
        qlist.resize(300,120)
        qlist.addItem('Item 1')
        qlist.addItem('Item 2')
        qlist.addItem('Item 3')
        qlist.addItem('Item 4')
        qlist.addItem('Item 5')
        qlist.addItem('Item 6')
        qlist.addItem('Item 7')
        qlist.addItem('Item 8')
        qlist.addItem('Item 9')

        # 使列表控件具备垂直滚动条
        qlist.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
        self.show()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = ListExample()
    sys.exit(app.exec_()) 

三、总结

本文介绍了如何在PyQt5中使用QListWidget来展示列表数据,并且提供滚动条。其中,我们介绍了使用QScrollArea来提供滚动条、直接给QListWidget添加滚动条两种方法。你可以根据自己的需要任选其中的一种方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PyQt5 QListWidget-添加额外的滚动条 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • PyQt5 – 在关闭状态下为组合框设置皮肤

    PyQt5是一个Python绑定的QtGUI工具包,它可以在Python中进行GUI应用程序开发,并且PyQt5是目前最流行的GUI工具包之一。组合框是常见的UI元素之一,用于显示下拉菜单,类似于HTML中的select标记。为组合框设置皮肤可以在UI上增强可视化效果,让应用程序看上去更加美观。 我们来看一下如何在关闭状态下为组合框设置皮肤: 1.安装PyQ…

    python 2023年5月11日
    00
  • PyQt5 QComboBox 设置不同的角

    PyQt5 QComboBox设置角的示例 以下示例演示了如何使用PyQt5 QComboBox将不同的角应用于下拉框: import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QComboBox class MainWindow(QMainWindow): def __init__…

    python 2023年5月12日
    00
  • PyQt5 – 进度条的resetFormat()方法

    PyQt5是Python语言下的GUI编程框架,它允许开发者使用Python语言快速创建跨平台的图形界面应用程序。其中,进度条是PyQt5框架中常用的一种组件之一,resetFormat()方法是其中的一个函数,用于重置进度条的文字提示格式。下面我们将详细介绍该函数的完整使用攻略。 1. 函数原型 resetFormat()方法是QtWidgets.QPro…

    python 2023年5月10日
    00
  • PyQt5 – 如何改变主窗口的背景颜色

    下面我将为你详细讲解如何通过 Pyqt5 来改变主窗口的背景颜色,以下是完整的使用攻略: 什么是 Pyqt5? Pyqt5 是 Python 语言的图形界面框架,它可以让我们用 Python 语言完成漂亮的 GUI 界面设计,Pyqt5 可以允许我们使用 Python 代码来控制界面的显示与操作。 如何修改主窗口背景颜色? 在 Pyqt5 中,我们可以修改主…

    python 2023年5月10日
    00
  • PyQt5 – 当复选框被按下时为其设置皮肤

    下面是详细讲解 Python 的 PyQt5 模块如何实现“当复选框被按下时为其设置皮肤”的完整使用攻略。本攻略涉及 QCheckBox 控件、StyleSheet、Lambda函数等知识点。 一、需求分析 本次需求是实现当 CheckBox 被选中时,为其设置颜色为红色的皮肤,否则设置为灰色的皮肤。 二、实现思路 我们可以在复选框的信号中添加相应的槽函数,…

    python 2023年5月11日
    00
  • PyQt5 – 当鼠标悬停时为OFF状态的组合框设置背景图片

    当鼠标悬停时为OFF状态的组合框设置背景图片,是一种使用PyQt5框架的操作。具体的实现过程如下: 导入PyQt5库 from PyQt5.QtWidgets import * 创建一个组合框对象 combobox = QComboBox() 为组合框设置样式 combobox.setStyleSheet("QComboBox{" &qu…

    python 2023年5月10日
    00
  • PyQt5 QSpinBox – 为文本设置权重

    我来为您详细讲解 Python 中 PyQt5 中的 QSpinBox 的权重设置及使用方法。 什么是 QSpinBox? QSpinBox 是 PyQt 5 中的一种可选择整数值的控件,用户可以点击“增加”和“减少”按钮来改变它的值。它常用于需要用户输入整数值的场景中,比如用户填写年龄、数量等信息时,可以使用 QSpinBox 来输入更加易于处理的整数类型…

    python 2023年5月12日
    00
  • PyQt5 – setWhatsThis() 单选按钮的帮助文本

    关于PyQt5中的setWhatsThis()单选按钮的帮助文本,可以通过以下步骤实现。 首先,我们需要导入PyQt5库。代码如下: from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * 接下来,我们需要创建一个Qt应用程序。可以使用QApplic…

    python 2023年5月11日
    00
合作推广
合作推广
分享本页
返回顶部