Qt プラグインを作成する

Qt のクロスプラットフォーム ツールキットを使用すると、Maya のユーザ インタフェースをカスタマイズできます。

Maya には、Qt プラグインに渡される独自のアプリケーション オブジェクトがあります。そのため、ユーザ独自の QApplication オブジェクトを作成する必要はありません。

QApplication.instance() または qApp マクロを使用して、Maya の QApplication オブジェクトの参照を取得することができます。QApplication.instance()qApp を複数回呼び出して、Maya の QApplication オブジェクトの複数の参照を取得することができます。

重要: QApplication オブジェクトを新規に作成しないでください。

Maya の QApplication オブジェクトの参照を取得したら、標準の Qt 呼び出しを使用してプラグイン アプリケーションを作成できます。詳細については、Qt マニュアルを参照してください。

from PySide2.QtCore import Qt
from PySide2.QtWidgets import QApplication, QPushButton
app = QApplication.instance()
button = QPushButton("About Qt")
button.clicked.connect(app.aboutQt)
button.setAttribute(Qt.WA_DeleteOnClose)
button.show()

注: Maya と Qt でレイアウトを使用する場合は、Maya と Qt のレイアウトの相互作用について詳細を把握する必要があります。Maya と Qt のレイアウトの連携の詳細については、C++ リファレンス内の MQUtil のマニュアルを参照してください。