Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
pyqt4自定义qlistwidget项_Pyqt4 - Fatal编程技术网

pyqt4自定义qlistwidget项

pyqt4自定义qlistwidget项,pyqt4,Pyqt4,我试图自定义qlistwidgetitem,但是文本和按钮之间有重叠 这是我的密码 from PyQt4.QtGui import * from PyQt4.QtCore import * import sys class myListWidget(QListWidget): def Clicked(self, item): QMessageBox.information(self, "ListWidget", "You clicked: "+item.text(

我试图自定义qlistwidgetitem,但是文本和按钮之间有重叠

这是我的密码

from PyQt4.QtGui import *
from PyQt4.QtCore import *

import sys


class myListWidget(QListWidget):

    def Clicked(self, item):
        QMessageBox.information(self, "ListWidget", "You clicked: "+item.text())

def main():
    app = QApplication(sys.argv)
    listWidget = myListWidget()
    #Resize width and height
    listWidget.resize(300,120)
    l = QListWidgetItem()
    l.setText('Im an item')
    l.setFlags(l.flags() | Qt.ItemIsUserCheckable)
    l.setCheckState(Qt.Checked)
    button = QCheckBox('Hello')
    l.setSizeHint(button.minimumSizeHint())
    listWidget.addItem(l)
    listWidget.setItemWidget(l, button)

    listWidget.setWindowTitle('PyQT QListwidget Demo')
    listWidget.itemClicked.connect(listWidget.Clicked)

    listWidget.show()
    sys.exit(app.exec_())

if __name__ == '__main__':
   main()

要求:-


您希望它如何显示?分配给QListWidget项的小部件叠加在该项上。我希望按钮显示在右侧(对齐),而不是超级强制。该项是可检查的,并且该按钮也是一个QCheckBox:
l.setFlags(l.flags()| Qt.ItemIsUserCheckable)
,是否希望在同一项中有两个复选框?是的,这是正确的,两个复选框将有不同的含义您希望在同一个框中有两个QCheckBox,对吗?