Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PyQt5 Maya 2017

Having some trouble setting up PyQt5 with Maya 2017. I have successfully installed PyQt5 on my mac and I can write standalone applications, but when I try to import PyQt5 modules in the Maya Script Editor using (for example)

from PyQt5 import QtWidgets

I get the following error :

Error: line 1: ImportError: file <maya console> line 1: No module named PyQt5

Not very experienced with using Python in Maya, is there some configuration I have to do? Also, does PyQt5 work with Maya 2016?

like image 332
green.mango Avatar asked Jan 04 '23 17:01

green.mango


2 Answers

Maya won't ship with pyqt and you need to build your own version of pyqt for maya with mayapy. You local install of pyqt won't get loaded to maya so need to compile your version yourself. This link will give a insight of that http://justinfx.com/2011/11/09/installing-pyqt4-for-maya-2012-osx/. Although maya 2017 shipping with PySide2 and you can always use Pyside rather than pyqt.

like

from PySide2 import QtWidgets

Hope this helps.

like image 71
Achayan Avatar answered Jan 13 '23 11:01

Achayan


If you want your scripts and UIs to work on either Maya 2016 or 2017 and above, I would suggest using the Qt.py package from Marcus Ottoson. You can find it here.

You can just install it somewhere on your computer and add its path to the 'path' variable in your environment variables, you can then just do:

from Qt import QtWidgets, QtCore, QtGui

You can then write your UIs as you would in PySide2, and they will work on all versions of Maya because Qt.py is just a wrapper choosing the proper binding available on your machine, whether it is Pyside, Pyside2, Qt5, Qt4.

like image 30
Martin Avatar answered Jan 13 '23 11:01

Martin