如何从 QListWidget 中删除项目

2023-11-26

每次我需要从 QListWidget 列表中删除 Item 时,我都会陷入使用 myItem.hide() 方法的困境。隐藏项目而不是删除/移除会使事情变得不必要的复杂。如果您向我展示如何从 ListWidget 中永久删除项目,我将不胜感激。

enter image description here


from PyQt4 import QtGui, QtCore

class MyApp(object):    
    def __init__(self):
        super(MyApp, self).__init__()                
        self.mainWidget = QtGui.QWidget()
        self.mainLayout = QtGui.QVBoxLayout()
        self.mainWidget.setLayout(self.mainLayout)

        self.hLayout = QtGui.QHBoxLayout()
        self.mainLayout.insertLayout(0, self.hLayout)
        self.listA=QtGui.QListWidget()
        for i in range(3):
            self.listA.addItem('Item '+str(i))
        self.hLayout.addWidget(self.listA)

        self.buttonGroupbox = QtGui.QGroupBox()
        self.buttonlayout = QtGui.QVBoxLayout()
        self.buttonGroupbox.setLayout(self.buttonlayout)

        okButton = QtGui.QPushButton('Remove Selected')
        okButton.clicked.connect(self.removeSel)
        self.buttonlayout.addWidget(okButton)

        self.mainLayout.addWidget(self.buttonGroupbox)
        self.mainWidget.show()
        sys.exit(app.exec_())

    def removeSel(self):
        listItems=self.listA.selectedItems()
        if not listItems: return        
        for item in listItems:
            print type(item), dir(item)

我不知道为什么,但 removeItemWidget 没有按预期工作。你必须使用 take item 来代替:

def removeSel(self):
    listItems=self.listA.selectedItems()
    if not listItems: return        
    for item in listItems:
       self.listA.takeItem(self.listA.row(item))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 QListWidget 中删除项目 的相关文章

随机推荐

  • 如何使用Application Verifier查找内存泄漏

    我想使用标准实用程序查找应用程序中的内存泄漏 以前我使用自己的内存分配器 但其他人 是的 你 AlienFluid 建议使用微软的应用程序验证器 但我似乎无法让它报告我的泄漏 我有以下简单的应用程序 include
  • 输入/输出流:流结束?

    我一直想知道 流的结尾是什么 在 java io 包中大多数 readLine 方法的 javadoc 中 您可以读到 如果到达流末尾 则返回 null 尽管我实际上从未得到 null 因为大多数流 在网络的情况下 我最常使用的流 只是阻止
  • DOM 改变元素内容

    如何使用 PHP DOM 函数更改元素内容 深入 我已经查询了我的元素 修改了属性 现在想要更改它的内容 我该怎么做 Set the nodeValue属性如果你想设置元素的文本内容 el dom gt getElementById foo
  • 非词法生命周期借用检查器会提前释放锁吗?

    我读了什么是非词汇生命周期 使用非词法借用检查器 可以编译以下代码 fn main let mut scores vec 1 2 3 let score scores 0 borrows scores but never used its
  • 将 pandas 数据框中的浮点数转换为字符串

    我在 pandas 中有一个包含日期时间和浮点数据的数据框 time price1 price2 2018 02 01T00 00 00 000Z 1 4526547885 1 654775563 我需要将列转换为字符串格式 以便price
  • 如何在 Perl 中进行 64 位算术?

    我是一个 Perl 新手 我可以在 Perl 中简单地使用 64 位算术吗 例如 operand1 0xFFFFFFFFFFFF 48 bit value operand2 0xFFFFFFFFFFFF 48 bit value Resul
  • 删除powershell中的子目录,包括符号链接

    目前遇到问题 我目前正在这样做 Get ChildItem PATH Recurse ErrorAction SilentlyContinue Where Object Attributes notmatch Directory and L
  • 使用 lambda 而不是字符串属性名称选择模型属性

    我正在构建一个类型的属性列表 以包含在该类型的集合的导出中 我想在不使用属性名称字符串的情况下执行此操作 列表中仅包含该类型的某些属性 我想做这样的事情 exportPropertyList
  • Go - HTML 注释未呈现

    我正在构建 Go Web 应用程序 我在渲染的 html 页面上发现了一些异常 我所有的 html 评论突然没有被渲染 我猜是因为我使用的go版本 刚刚更新到更高版本 因为在我更新之前它是好的 这是我的代码 ul class breadcr
  • Java 8、类型注释和 JSR 308

    我已经安装了最新的 JDK 8 b116 但我注意到我无法使用类型注释 例如 阅读 Java 教程 如果我写 String str null String myString NonNull String str or TEST st new
  • 如何在c#中检索字符串formData js

    我必须在 net 的 Web api 中检索 idPerson 的值 我已经检索到文件 UploadedImage 但我无法检索 idPerson 的值 有人有解决办法吗 Thx 我的js函数 Upload de l image de pr
  • 零长度位域的实际使用

    我对 C 不太确定 但 C 允许长度为 0 的未命名位字段 例如 struct X int 0 问题一 这个可以有什么实际用途you考虑到 问题二 您知道哪些实际用途 如果有 Edited 您使用零长度位字段作为一种黑客方法 让编译器布局一
  • UIWebView stringByEvaluatingJavaScriptFromString

    我一直致力于让一些非常基本的 JS 在我的 UIWebView 中运行 在网络视图的委托中 我有 void webViewDidFinishLoad UIWebView wView NSString someHTML wView strin
  • 删除子图

    我正在尝试找出一种删除 动态 matplotlib 中的子图的方法 我看到他们有一个remove方法 但我收到错误 NotImplementedError cannot remove artist 我很惊讶我在任何地方都找不到这个 有谁知道
  • 缩放和平移后如何获得相对于画布的触摸坐标?

    在移动和缩放画布后 我需要获得相对于画布的 x 和 y 触摸 以检查碰撞和类似的情况 每当我平移画布或围绕原点 0 0 缩放画布时 我已经设法通过使用以下代码获取触摸坐标 private float convertToCanvasCoord
  • 为什么 exec("break") 不在 while 循环内工作

    正如问题所问 为什么下面的代码不起作用 while True exec break 我通过 python 3 5 2 控制台在 pycharm 中执行上述内容 我最初认为这是一个上下文问题 但在阅读文档后 我还没有进一步理解为什么会出现此错
  • SQL 查询之间有什么区别?

    我们有这样的查询 SELECT t FROM articles t WHERE t article id 59446 也称为 SELECT articles FROM articles WHERE articles article id 5
  • 您的连接不安全 - 使用 Selenium.WebDriver v.3.6.0 + Firefox v.56

    我正在编写测试硒 C 我面临一个重要问题 因为当我使用安全连接测试我的网站时没有找到解决方案 HTTPS 我在 stackoverflow 上找到的所有解决方案都已过时或不起作用 我尝试练习以下问题的所有解决方案 Selenium 为什么将
  • 如何使用java获取本地系统的子网掩码?

    你如何获得Subnet使用Java的本地系统的掩码地址 本地主机接口的第一个地址的网络掩码 InetAddress localHost Inet4Address getLocalHost NetworkInterface networkIn
  • 如何从 QListWidget 中删除项目

    每次我需要从 QListWidget 列表中删除 Item 时 我都会陷入使用 myItem hide 方法的困境 隐藏项目而不是删除 移除会使事情变得不必要的复杂 如果您向我展示如何从 ListWidget 中永久删除项目 我将不胜感激