はじめに
環境構築、お疲れ様でした。 さて、今回からいよいよPythonコードを書いていきますが、その前に一つだけ、絶対に知っておかなければならない概念があります。
それは「CUI」と「GUI」の違いです。
ここを理解していないと、「print()したのに画面に文字が出ない!」「while Trueしたら画面が固まった!」という、初心者が必ず踏む地雷を踏むことになります。
1. CUI(Character User Interface)とは?
これまで皆さんがPythonの勉強で見てきたのは、おそらくこちらでしょう。 その名の通り、「文字(Character)」によって情報を表示し、操作する方式です。
見た目: 黒い画面(ターミナル / コマンドプロンプト)に文字が並んでいる。
表現方法: すべての結果は「文字列」として出力されます。
特徴: 基本的なPythonの学習コードのように、上から下へ処理が流れる記述が多くなります(※高度な制御を行えばインタラクティブな動作も可能ですが、基本はテキストベースです)。
計算結果をログとして見るだけならこれで十分ですが、私たちが普段遊んでいるような「絵」が動くゲームを作るには、別の仕組みが必要です。
2. GUI(Graphical User Interface)とは?
これから私たちが作ろうとしているのがこちら。 「画像(Graphic)」や図形、ウィンドウを使って情報を視覚的に表現する方式です。
見た目: ウィンドウ、ボタン、画像、メニューバー。
表現方法: ピクセル単位で図形や画像を自由に描画できます。
特徴: ユーザーのマウス操作やキー入力に対して、リアルタイムに画面が変化します。
3. ゲーム作りで変わる「プログラムの形」
学校の授業などで習う基本的なプログラムと、GUIアプリでは、コードの構造が少し変わります。
基本的なスクリプト処理: 「入力 → 計算 → 出力」をして、仕事が終わったらプログラムが終了します。
- GUIのイベント駆動処理: ウィンドウを出したら、「無限ループ」に入って、ユーザーの操作を待ち続けます。これを「イベントループ」と呼びます。
4. 実践!PySide6で「空のウィンドウ」を出す
理屈はここまでにして、実際にGUIの世界への扉を開けてみましょう。 以下のコードをVS Codeに貼り付けて実行してみてください。
‣Pythonコード
はじまり---------------------------------------------
import sys
from PySide6.QtWidgets import QApplication, QWidget
# 1. アプリケーション(管理人のようなもの)を作る
app = QApplication(sys.argv)
# 2. ウィンドウ(キャンバス)を作る
window = QWidget()
window.setWindowTitle("私の初めてのGUI")
# タイトル設定
window.resize(400, 300) # サイズ設定 (横400px, 縦300px)
# 3. ウィンドウを画面に表示する
window.show()
# 4. イベントループ(無限待機)を開始する
# これがないと、一瞬でプログラムが終了してウィンドウが消えます
sys.exit(app.exec())
実行して、何も書かれていない真っ白なウィンドウが表示されましたか? おめでとうございます! これがあなたのゲームの「画用紙」です。 文字だけの世界(CUI)を卒業し、自由な描画ができる世界(GUI)へ足を踏み入れました。
次回予告
ウィンドウは出ましたが、まだ真っ白です。 次回は、この画用紙の上に図形を描くための筆、「QPainter」の使い方を学びます。
Next Step: 【#3】四角形や円を描いてみよう(QPainter基礎編)

0 件のコメント:
コメントを投稿