Q~Viewシリーズのアイテムの挙動をまとめて制御する。
いきなりですが、Maya2017からPySide2になって面倒な事になりましたね。
Maya 2017 は PySide2 を使用します。スクリプト内で PySide を使用するには、次のように PySide からモジュールを読み込みます。こうすると、Maya 2017 と Maya 2017 より前のバージョンの両方に対してスクリプトの互換性が維持されます。
保守どうすんのやぁぁぁぁ・・・
Maya 2017 は PySide2 を使用します。スクリプト内で PySide を使用するには、次のように PySide からモジュールを読み込みます。こうすると、Maya 2017 と Maya 2017 より前のバージョンの両方に対してスクリプトの互換性が維持されます。
try: from PySide2.QtCore import * from PySide2.QtGui import * from PySide2.QtWidgets import * from PySide2 import __version__ from shiboken2 import wrapInstance except ImportError: from PySide.QtCore import * from PySide.QtGui import * from PySide import __version__ from shiboken import wrapInstanceなんてとんでもない事書いてますけど、「import *」はPythonでは推奨されていませんからね!!!!!!!
一般的には、モジュールやパッケージから * を import するというやり方には賛同できません。 というのは、この操作を行うとしばしば可読性に乏しいコードになるからです。
とは言え、ちゃんと対応しようと思ったらとっても大変なんで、その時が来るまでここは目をつぶることにします・・・(Qt用のqtlibモジュール作って、その中でPySide1系のモジュールを擬似的にPySide2系のモジュール名に合わせるしかないかも・・・)
と、しょっぱなから話しはそれましたが・・・あ、
新年明けましておめでとうございます。
この年になるとなんにもおめでたくないんですが、一応・・・
さて、QtのQ~Viewシリーズ(QTreeView、QListView、QTableViewなど)に表示するアイテムはラベルの編集や選択の可否、有効/無効などさまざまな状態に設定する事が出来ます。