Pythonでウィンドウを表示する方法はいくつかあります。主に使われるのは、標準ライブラリである Tkinter や、より高機能なGUIライブラリである PyQt、 Kivy、 Pygame などです。

画像に「Python AWT Sample」とありますが、AWT (Abstract Window Toolkit) はJavaのGUIライブラリであり、Pythonで直接的に使うことは一般的ではありません。もしJavaのAWTに似たようなことをPythonで行いたいのであれば、Tkinterが比較的シンプルで近い概念を持っています。
以下に、それぞれのライブラリで簡単なウィンドウを表示する基本的な方法を示します。
Tkinter を使用する方法 (Python標準ライブラリ)
Python
import tkinter as tk # メインウィンドウを作成 window = tk.Tk() # ウィンドウのタイトルを設定 window.title("Python Tkinter Window") # ウィンドウのサイズを設定 (幅x高さ) window.geometry("600x400") # ウィンドウをmainloopで実行し、イベントを待ち受ける window.mainloop()
このコードを実行すると、タイトルバーに「Python Tkinter Window」と表示された、600ピクセル幅、400ピクセル高さの空のウィンドウが表示されます。
PyQt を使用する方法
PyQtはより高機能なGUIライブラリであり、インストールが必要です。
Bash
pip install PyQt5
そして、以下のコードでウィンドウを表示できます。
Python
import sys from PyQt5.QtWidgets import QApplication, QWidget # アプリケーションオブジェクトを作成 app = QApplication(sys.argv) # ウィンドウオブジェクトを作成 window = QWidget() # ウィンドウのタイトルを設定 window.setWindowTitle("Python PyQt Window") # ウィンドウのサイズを設定 window.setGeometry(100, 100, 600, 400) # x, y, width, height # ウィンドウを表示 window.show() # アプリケーションを実行し、イベントループを開始 sys.exit(app.exec_())
Kivy を使用する方法
Kivyはマルチタッチにも対応したGUIライブラリで、独自の言語(Kv言語)を使用することもできます。インストールが必要です。
Bash
pip install kivy
基本的なウィンドウ表示のコードは以下のようになります。
Python
from kivy.app import App from kivy.uix.widget import Widget class MyWindow(Widget): pass class MyApp(App): def build(self): return MyWindow() if __name__ == '__main__': MyApp().run()
Pygame を使用する方法
Pygameは主にゲーム開発に使われるライブラリですが、ウィンドウの作成も可能です。インストールが必要です。
Bash
pip install pygame
ウィンドウを表示する基本的なコードは以下の通りです。
Python
import pygame import sys # Pygameを初期化 pygame.init() # ウィンドウのサイズを設定 size = [600, 400] screen = pygame.display.set_mode(size) # ウィンドウのタイトルを設定 pygame.display.set_caption("Python Pygame Window") # ゲームループ running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # 画面を塗りつぶし (例: 黒) screen.fill((0, 0, 0)) # ここに描画処理などを記述 # 画面を更新 pygame.display.flip() # Pygameを終了 pygame.quit() sys.exit()
どのライブラリを使うべきか:
- Tkinter: Pythonに標準搭載されており、簡単なGUIアプリケーションを作成するのに適しています。学習コストが比較的低いです。
- PyQt: 高機能で豊富なウィジェットを提供し、本格的なデスクトップアプリケーション開発に適しています。ライセンスに注意が必要です (GPLまたは商用ライセンス)。
- Kivy: マルチタッチやクロスプラットフォームに強く、モダンなUIを作成するのに適しています。モバイルアプリ開発にも使われます。
- Pygame: 主に2Dゲーム開発に使われますが、シンプルなウィンドウ表示や描画にも利用できます。
画像の「メインフレームの作成」というタイトルや、ウィンドウのサイズ、タイトルバーの存在などから推測すると、Tkinter が最も近い概念でシンプルなウィンドウ表示に適していると思われます。上記のTkinterのコードを試してみてください。