zoukankan      html  css  js  c++  java
  • 【PyQt5 学习记录】011:使用 QListWidet 创建列表

    [command]:<>(项目名称 : PyQt5)
    [command]:<>(文件名称 : QListWidget.md)
    [command]:<>(创建日期 : 2018 年 11 月 07 日)
    [command]:<>(创建时间 : 00:41)

    使用 QListWidet 创建列表

    作者: 八月未见 博客: https://www.cnblogs.com/jmtm/

    创建列表:

    list_widget = QListWidget()
    

    插入项目:

    直接添加文字:

    # 在末尾添加:
    list_widget.addItem("Item")
    
    items = ["Item - 1", "Item - 2"]
    list_widget.addItems(items)
    
    # 在指定行添加:
    list_widget.insertItem(0, "Item")
    
    items = ["Item - 1", "Item - 2"]
    # 从第 1 行开始添加:
    list_widget.insertItems(1, items)
    

    举个栗子:

    # 创建列表:
    list_widget = QListWidget()
    item_list = []
    for i in range(20):
        item_list.append("Item - " + str(i))
    # 向列表添加项目:
    list_widget.addItems(item_list)
    

    效果如下:

    添加 item :

    使用 QtWidgets.QListWidgetItem 创建项目

    # 创建一个 item :
    item = QListWidgetItem()
    item.setIcon(QIcon("programme.png"))
    item.setText("Item")
    list_widget.addItem(item)
    

    将项目添加到列表:

    # 直接添加:
    QListWidgetItem(QIcon("icon.png"), "Item", list_widget)
    
    list_widget.addItem(item)
    
    list_widget.insertItem(0, item)
    

    栗子来了:

    QListWidgetItem(QIcon("laugh.png"), "Item - 1", list_widget)
    
    item = QListWidgetItem()
    item.setIcon(QIcon("programme.png"))
    item.setText("Item - 2")
    list_widget.insertItem(0, item)
    

    效果如图:

    编辑项目:

    当前选项:

    设置当前选项:

    # 通过项目来设置当前选项:
    list_widget.setCurrentItem(item)
    
    # 通过行来设置当前选项:
    list_widget.setCurrentRow(3)
    

    获取当前选项:

    # 获取当前选项:
    current_item = list_widget.currentItem()
    
    # 获取当前行:
    current_row = list_widget.currentRow()
    

    编辑选项:

    # 开始编辑:
    list_widget.openPersistentEditor(current_item)
    
    # 结束编辑:
    list_widget.closePersistentEditor(current_item)
    

    删除选项:

    # 删除第四行:
    list_widget.takeItem(4)
    
    # 移除选项上的其他组件:
    # 注意:这不会删除选项,仅仅移除选项上的其他组件(如:Label、LineEdit、等)。
    list_widget.removeItemWidget(current_item)
    
    # 移除所有选项:
    # 注意:这会让列表变成一片空白。
    list_widget.clear()
    

    选项数量:

    list_widget.count()
    

    在选项上显示组件:

    # 如果你这么做了将会无法删除此选项:
    list_widget.setItemWidget(item, QLabel("这是一个 Label !"))
    

    查找选项:

    # 在所有选项中查找有字符 4 的选项,并返回数组:
    list_widget.findItems("4", Qt.MatchContains)
    
    # 通过行找到选项:
    # 注意:第一行是 0 。
    list_widget.item(3)
    
    

    隐藏选项:

    list_widget.setRowHidden(2, True)
    

    参考资料:QListWidget — Qt for Python (Technology Preview)

  • 相关阅读:
    stenciljs 学习四 组件装饰器
    stenciljs 学习三 组件生命周期
    stenciljs 学习二 pwa 简单应用开发
    stenciljs ionic 团队开发的方便web 组件框架
    stenciljs 学习一 web 组件开发
    使用npm init快速创建web 应用
    adnanh webhook 框架 hook rule
    adnanh webhook 框架 hook 定义
    adnanh webhook 框架request values 说明
    adnanh webhook 框架execute-command 以及参数传递处理
  • 原文地址:https://www.cnblogs.com/jmtm/p/9919931.html
Copyright © 2011-2022 走看看