Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.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
Python 如何将StandardPixmap添加到布局?_Python_Pyqt4_Qpixmap - Fatal编程技术网

Python 如何将StandardPixmap添加到布局?

Python 如何将StandardPixmap添加到布局?,python,pyqt4,qpixmap,Python,Pyqt4,Qpixmap,我正在试着把它装进去 显示在我的布局上 到目前为止,我已经设法访问了一个标准的pixmap(PyQt4.QtGui.QStyle.SP_MessageBoxWarning),但似乎无法将其添加到我的布局中。我曾尝试使用setPixmap方法将其添加到QLabel中,但这需要一个pixmap,而不是一个标准的pixmap 我找到了,这使我找到了标准的PixMaps,但我无法从这里取得任何进展。PyQt4.QtGui.QStyle.SP_MessageBoxWarning是一个枚举值,而不是pixm

我正在试着把它装进去 显示在我的布局上

到目前为止,我已经设法访问了一个标准的pixmap(
PyQt4.QtGui.QStyle.SP_MessageBoxWarning
),但似乎无法将其添加到我的布局中。我曾尝试使用setPixmap方法将其添加到QLabel中,但这需要一个pixmap,而不是一个标准的pixmap


我找到了,这使我找到了标准的PixMaps,但我无法从这里取得任何进展。

PyQt4.QtGui.QStyle.SP_MessageBoxWarning
是一个枚举值,而不是pixmap

为了从中获得一个pixmap,您可以将它提供给当前使用的样式的方法

例如:

from PyQt4 import QtGui

if __name__ == '__main__':
    app = QtGui.QApplication([])
    label = QtGui.QLabel()
    label.setPixmap(app.style().standardPixmap(QtGui.QStyle.SP_MessageBoxWarning))
    label.show()
    app.exec_()
不幸的是,
standardPixmap
方法现在被认为已经过时了。Qt文档建议使用返回值的方法

如果仍要使用
QLabel
显示图标,则必须从所获得的
QIcon
构建
QPixmap
。您可以使用其中一种方法进行此操作:

from PyQt4 import QtGui

if __name__ == '__main__':
    app = QtGui.QApplication([])
    label = QtGui.QLabel()
    icon =  app.style().standardIcon(QtGui.QStyle.SP_MessageBoxWarning)
    label.setPixmap(icon.pixmap(32))
    label.show()
    app.exec_()