pygameの終了処理に関する質問があります。
検索しながら1つ1つコードにコメントを打っているのですが、どう解釈していいか分からない箇所があります。
- for event in pygame.event.get()のキャッチしたイベントを一覧にして返す。が理解できません。どういう解釈をすれば良いですか?
個人的なイメージなんですけど、pygame.event.get()(マウスやキーボードなどのアクション)をeventにずっと入れ続け、eventを見ると、どんな(マウスやキーボードなどの)アクションを起こしたか分かる。という感じなのかなと思ってるのですが違いますでしょうか...
- pygame.quit()の「モジュールの初期化を解除」という意味がピンときません。
init()で初期化したモジュールのpygameが全部消えるということでしょうか?消さないとエラーになるということでしょうか?
pygame.quit()は画面を閉じると説明しているサイトもあるのですが、pygame.quit()無しで実行しても問題なく画面を閉じられたのですが、どういうことなのかよく分かりません。
- sys.exit()のコードが無い場合、画面を消してもプログラムはずっと動いているということですか?
もし書かずに実行して画面を消した場合、どうやればプログラムを止められますか?
ちなみに、sys.exit()無しで実行しようとしたらエラーになったので、そもそもsys.exit()が無いと実行は不可能ということなのでしょうか?
4.sys.exit()ではなく、breakで止めるのとでは意味が全然変わりますか?
5.全体的に見ておかしなコメント(コード説明)があれば教えてくださると助かります。
該当のソースコード
import pygame #pygameのモジュールを読み込む。 import sys #sysのモジュールを読み込む。 #ゲームメイン処理 def main(): #main関数 #終了処理 while True: #無限ループ for event in pygame.event.get(): # pygame.event.get() は、キャッチしたイベントを一覧にして返す。 if event.type == pygame.QUIT: # ウィンドウの隅にある閉じるボタンをクリックしたときに発生するイベントタイプ。 一覧から取り出したイベントが「QUIT」(中断の意味) ならば pygame.quit() #初期化を解除 全てのpygameモジュールの初期化を解除します。 sys.exit() #メインプロセスを終了 if __name__ == "__main__": #他のファイルから実行されないように、このファイルからだけ実行できる。 #初期 pygame.init() # pygameに必要なすべてのモジュールを初期化(使えるように)する。 pygame.display.set_caption("タイトル名(pygame ver)") #タイトルを作成 screen = pygame.display.set_mode((800,600)) #画面を作成 横800x縦600px main() #main関数を実行
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。