不理解pyqt错误

时间:2014-06-27 09:47:26

标签: python pyqt

如果我的标题听起来很模糊,我会提前道歉......如果有必要,可以随意编辑吗?我在这里曾经工作过一段时间的困境,但是在主脚本中更改了一些代码之后,ui似乎遇到了问题。

这里有2个脚本,mmvsTool.py(执行脚本)和mmvsToolUI.py(ui接口脚本)

如果我错了,请纠正我,因为我使用from PyQt4 import QtCore, QtGui作为PyQt小部件的导入句子而且在脚本中我没有使用Pyside...时错误似乎告诉我否则用它?

# Traceback (most recent call last):
#   File "<string>", line 1, in <module>
#   File "/user_data/maya/python/mmvsTool.py", line 14, in __init__
#     self.setupUi( self )
#   File "/user_data/maya/python/mmvsToolUI.py", line 18, in setupUi
#     mmvsFTool.setWindowIcon(icon)
# TypeError: # 'PySide.QtGui.QWidget.setWindowIcon' called with wrong argument types:
#   PySide.QtGui.QWidget.setWindowIcon(QIcon)
# Supported signatures:
  PySide.QtGui.QWidget.setWindowIcon(PySide.QtGui.QIcon)

对错误引用的ui代码的一些看法:

from PyQt4 import QtCore, QtGui

class Ui_mmvsTool(object):
    def setupUi(self, mmvsTool):
        mmvsFTool.setObjectName("mmvsTool")
        mmvsFTool.resize(419, 752)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/mmvsIcons/mmvsFTool"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        mmvsFTool.setWindowIcon(icon)

主脚本中的部分:

from mmvsToolUI import Ui_mmvsTool

from qtswitch import QtGui
from  maya import cmds as mc, mel as mm
import os

class mmvsFTool( QtGui.QWidget, Ui_mmvsTool ):
    """
    """
    def __init__( self, parent = None ):
        super( mmvsFTool, self ).__init__( parent = parent )
        self.setupUi( self )
        # this does nothing yet
        self.modeWidget.setVisible( False )    

1 个答案:

答案 0 :(得分:1)

我想我现在看到了你的问题。

from qtswitch import QtGui  # This is maybe in PySide? Not compatible with PyQt4

将其更改为:

from PyQt4 import QtGui

然后看看它是否有效。