PyQt5 Tutorials

PyQt5による基本ウィンドウの作成

Spread the love

このチュートリアルでは、Qtフレームワークの強力なPythonバインディングであるPyQt5を使用して基本的なウィンドウを構築するためのクイックスタートを提供します。ウィンドウの作成、サイズ変更、アイコンの追加について説明します。

目次

基本的なウィンドウの作成

まずは、最も単純なPyQt5ウィンドウを構築してみましょう。これには、必要なモジュールのインポートと、アプリケーションとメインウィンドウインスタンスの作成が含まれます。


import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    window.show()
    sys.exit(app.exec_())

内訳は以下のとおりです。

  • import sysおよびfrom PyQt5.QtWidgets import QApplication, QWidget:必要なモジュールをインポートします。QApplicationはアプリケーションの流れと設定を管理し、QWidgetはUIオブジェクトの基本クラスです。
  • if __name__ == '__main__'::コードが直接実行されたときのみ実行され、インポートされたときには実行されないようにします。
  • app = QApplication(sys.argv)QApplicationインスタンスを作成します。sys.argvはコマンドライン引数を処理します。
  • window = QWidget():基本的なウィンドウウィジェットを作成します。
  • window.show():ウィンドウを可視化します。
  • sys.exit(app.exec_()):Qtイベントループを開始します。app.exec_()はアプリケーションの終了時に戻ります。sys.exit()はPythonをクリーンに終了します。

これを(例:)basic_window.pyとして保存し、ターミナルから実行します:python basic_window.py。空白のウィンドウが表示されます。

ウィンドウのサイズ変更

次に、resize()メソッドを使用してウィンドウのサイズを制御してみましょう。


import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    window.resize(400, 300)  # 幅、高さ
    window.show()
    sys.exit(app.exec_())

window.resize(400, 300)を追加すると、ウィンドウの幅が400ピクセル、高さが300ピクセルに設定されます。

ウィンドウアイコンの追加

最後に、アイコンを追加してみましょう。これには、画像ファイル(例:Windowsの場合は.icoファイル、クロスプラットフォームの場合は.pngファイル)が必要です。


import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    window.resize(400, 300)
    window.setWindowIcon(QIcon('icon.png'))  # 'icon.png'をあなたのアイコンファイルに置き換えてください
    window.show()
    sys.exit(app.exec_())

QIconをインポートし、window.setWindowIcon(QIcon('icon.png'))を使用します。'icon.png'をアイコンのパスに置き換えてください。アイコンが同じディレクトリにあるか、またはフルパスを指定してください。実行する前にPyQt5をインストールしてください:pip install PyQt5

これでチュートリアルの終わりです。これを基に、より高度なアプリケーションを作成できます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です