PythonのPySimpleGUIでサイコロを振るアプリ作成

Python

ad2

PythonのPySimpleGUIでサイコロを振るアプリ作成

アプリ結果画像

今回は、PythonでPySimpleGUIを活用して、アプリを作成しました。

ボタンを押せば1~6の番号をランダムで表示させる

サイコロを振るアプリ

py_dice01

py_dice06

 

ソースコード

import PySimpleGUI as sg
import random

def main():
    layout = [
        [sg.Text("サイコロの目:", font=("Helvetica", 16))],
        [sg.Text("", size=(10, 1), font=("Helvetica", 48), key="-RESULT-")],
        [sg.Button("サイコロを振る", font=("Helvetica", 16))]
    ]

    window = sg.Window("サイコロアプリ", layout, finalize=True)

    while True:
        event, values = window.read()

        if event == sg.WINDOW_CLOSED:
            break
        elif event == "サイコロを振る":
            result = random.randint(1, 6)
            window["-RESULT-"].update(str(result))

    window.close()

if __name__ == "__main__":
    main()

 

サイコロの目の画像も表示

py_dice03

py_dice03

py_dice04

py_dice04

ソースコード


import PySimpleGUI as sg
import random

def main():
    layout = [
        [sg.Text("サイコロの目:", font=("Helvetica", 16))],
        [sg.Image(filename="", key="-DICE_IMAGE-")],
        [sg.Button("サイコロを振る", font=("Helvetica", 16))],
        [sg.Button("終了", font=("Helvetica", 16))]
    ]

    window = sg.Window("サイコロアプリ", layout, finalize=True)

    while True:
        event, values = window.read()

        if event == sg.WINDOW_CLOSED or event == "終了":
            break
        elif event == "サイコロを振る":
            result = random.randint(1, 6)
            image_filename = f"dice{result}.png"
            window["-DICE_IMAGE-"].update(filename=image_filename)

    window.close()

if __name__ == "__main__":
    main()