如何删除PyQt5 GUI中的内容?

时间:2018-07-22 11:35:01

标签: python-3.x pyqt5

我正在尝试使用PyQt5创建一个GUI应用程序,它将在单击按钮时从主窗口添加和删除图片(该窗口应具有两个按钮-和)。 我希望第一张图片位于QHBoxLayout的开头,第二张图片尽可能与第一张图片一样,依此类推。 如果每次创建新标签时都添加拉伸,则在尝试删除图片时窗口会混乱。因此,当我需要删除标签并需要创建标签时添加一个标签时,我想删除一个标签。 我已经搜索了文档,但是除了我知道的如何添加拉伸之外什么也找不到。

所以,伙计们-如果有人可以帮助我解决这个问题,或者以其他方式我可以做到这一点-它将帮助我很多。 谢谢。

1 个答案:

答案 0 :(得分:0)

我想我已经找到您问题的答案!尽管我不知道有任何方法可以消除拉伸本身(我自己也有同样的问题),但我相信您可以使用QspacerItem来达到与添加拉伸相同的目的。好的是,可以删除QspacerItem。

这是使用QspacerItem的样子

    self.stretchy_spacer_thing =QSpacerItem(10,10,QSizePolicy.Minimum,QSizePolicy.Expanding)
    self.some_Vbox_layout.addItem(self.stretchie)

然后,当不需要时,可以通过.removeItem()拿走隔离物

     self.some_Vbox_layour.removeItem(self.stretchy_spacer_thing) 

我本人并不习惯使用这些东西,所以我不知道关于它们的所有知识。但是我只是尝试在自己的一些代码中使用它,它似乎很适合我。