Raspberry Pi Python GUI アプリケーション 02:ウィンドウの設定

今回は、表示するウィンドウについて設定をいくつかしてみます。

設定するのは以下の内容です

・幅と高さ

・サイズ

・表示位置(今回は幅と高さ、ディスプレイの幅と高さから算出した中央に指定)

・タイトル(表示位置とサイズを表示) 

・最大化できなくする

 

# -*- coding: utf-8 -*-
# 日本語コメントをエラーとしないように、UTF-8で保存

# 使用するライブラリのインポート
import tkinter

# 継承した場合など、実行されないようにする(現状、意味は特にない)
if __name__ == "__main__":
    # 表示するウィンドウの幅と高さ(自由に指定できます)
    WINDOW_WIDTH = 500
    WINDOW_HEIGHT = 220

    # メインとなるウィンドウを作成
    main_window = tkinter.Tk()
    # ディスプレイの幅と高さを取得
    s_width = main_window.winfo_screenwidth()
    s_height = main_window.winfo_screenheight()
    # 表示する左上の座標を算出
    win_top = int((s_height - WINDOW_HEIGHT) / 2)
    win_left = int((s_width - WINDOW_WIDTH) / 2)
    # サイズと表示位置を指定した文字列
    geometry = "{0}x{1}+{2}+{3}".format(WINDOW_WIDTH, WINDOW_HEIGHT, win_left, win_top)
    # サイズと表示位置を中央に指定(幅 x 高さ + 左位置 + 上位置)
    main_window.geometry(geometry)
    # タイトル
    main_window.title("title : " + geometry)
    # 最大化を無効化
    main_window.resizable(0, 0)

    # 作成したウィンドウを表示
    main_window.mainloop()

 少し、プログラムらしくなってきました。

なお、このプログラムはPythonの環境が整っていれば、WindowsmacOSでも実行可能です(のはず)