Add QWidget to QListWidget

后端 未结 2 575
日久生厌
日久生厌 2020-12-28 08:04

I am trying to make a QListWidget in which each item is a simple widget that contains text and a pushbutton. I use the following:

itemN = QtGui.QListWidgetIt         


        
2条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-28 08:56

    Try this:

    itemN = QtGui.QListWidgetItem() 
    #Create widget
    widget = QtGui.QWidget()
    widgetText =  QtGui.QLabel("I love PyQt!")
    widgetButton =  QtGui.QPushButton("Push Me")
    widgetLayout = QtGui.QHBoxLayout()
    widgetLayout.addWidget(widgetText)
    widgetLayout.addWidget(widgetButton)
    widgetLayout.addStretch()
    
    widgetLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)
    widget.setLayout(widgetLayout)  
    itemN.setSizeHint(widget.sizeHint())    
    
    #Add widget to QListWidget funList
    funList.addItem(itemN)
    funList.setItemWidget(itemN, widget)
    

    As you can see, you need setSizeConstraint to the layout and setSizeHint to item.

提交回复
热议问题