WindowsでQt6/Pyside6を使ったGUI開発(導入編)

何回かに分けて、Windows上でPythonのライブラリをPyside6を用いたQt6の開発環境について説明していきます。初回は入門編として、インストールからHello Worldプログラムの作成までを説明します


PyQt5とPyside2/Pyside6

QtのPythonライブラリとしてはPyQtとPysideという似たようなものが併存しているのですが、ざっくり調べたところでは、主な違いは以下の通り

  • PyQt5の作成元はRiverbank Computing Ltd.
  • Pyside6の作成元はNokia
  • どちらもほぼ互換性あり
  • PyQt5の方が歴史が古く、Pysideの歴史は2009年から
  • PyQt5の方が開発が早く、Qt5のサポートは2016年半ば頃。これに対してPyside2のQt5サポートは2018年頃
  • そのため、PyQt5の方が人気が高く、Web上の参考コードも豊富
  • ただし、PyQt5のライセンスはGPLで配布時にはソースコードの開示が必須。もしくは商用ライセンスを購入する必要あり
  • これに対して、PysideはLPGLなため商用にも利用しやすい

上記を見ると、個人で使用する分にはPyQt5の方がよさそうですが、最近のリリースからPysideがQtのオフィシャルPythonバインディングになったようですので、今後はPysideの人気が上昇すると見込んでそちらを選択します

Pyside6のインストール

自分は普段Msys2(mingw)のpythonを使用しているのですが、QtのPython向けライブラリはMsys2をサポートしていないようです。インストールを試みると以下のようなエラーで終了します

% pip install pyside6
ERROR: Could not find a version that satisfies the requirement pyside6 (from versions: none)
ERROR: No matching distribution found for pyside6

仕方がないので、Windows版Pythonをインストールして使用します。Pythonのバージョンは3.6から3.9までがサポートされているようですが、ここは最新版の3.9.6をインストールします。またPyside6は64bit版しかサポートされないため、必ず64bit版をインストールします。

インストールはすべてデフォルト設定でも大丈夫です。Windows版をインストール完了後、あらためて

% pip install pyside6

でインストールが完了します

テストプログラム

インストールが完了したら、最初にHello Worldプログラムを動かしてみます

import sys
from PySide6.QtCore import Qt
from PySide6.QtWidgets import QApplication, QLabel
                                                     
app = QApplication(sys.argv)
label = QLabel("Hello World", alignment=Qt.AlignCenter)
label.show()
app.exec()

実行して、無事以下のようなWindowsが立ち上がればインストール成功です

おすすめ