python PySimpleGUIでTableのヘッダーの背景色や色、サイズ、fontを設定する

python PySimpleGUIでTableのヘッダーの背景色や色、サイズ、fontを設定する

pythonで、ライブラリPySimpleGUIを使用して、ヘッダーの背景色や色、サイズ、fontを設定するサンプルコードを記述してます。pythonのバージョンは3.8.5を使用してます。

環境

  • OS windows10 pro 64bit
  • python 3.8.5

PySimpleGUIインストール

PySimpleGUIをインストールされていない方は、pipでインストールしておきます。

PySimpleGUI

<出力結果>
Collecting PySimpleGUI
  Downloading PySimpleGUI-4.41.2-py3-none-any.whl (348 kB)
     |████████████████████████████████| 348 kB 1.3 MB/s
Installing collected packages: PySimpleGUI
Successfully installed PySimpleGUI-4.41.2

ヘッダーの背景色や色、サイズ、fontを設定する

Tableの背景色は「header_background_color」で、色は「header_text_color」、サイズとfontは「header_font」を指定することで可能です。

import PySimpleGUI as sg

# 行列の値
var = [[x + 9 * y for x in range (9)] for y in range (10)]

# 列名(A~I)
name = [chr(65+x) for x in range (9)]

sg.Table(var, headings=name, header_font=('Arial',20), header_text_color='#5cc48a',
                      header_background_color='#cccccc')

以下は、Tableの背景色や色、サイズ、fontを設定したサンプルコードとなります。

import PySimpleGUI as sg

# ウィンドウのテーマ
sg.theme('SandyBeach')

# 行列の値
var = [[x + 9 * y for x in range (9)] for y in range (10)]

# 列名(A~I)
name = [chr(65+x) for x in range (9)]

# ウィンドウのレイアウト
layout=[            
            [sg.Table(var, headings=name, alternating_row_color='#5cc48a', def_col_width=3, auto_size_columns=False, vertical_scroll_only=False)],
            [sg.Table(var, headings=name, background_color='#5cc48a', alternating_row_color='#e4ba42', def_col_width=3, auto_size_columns=False, vertical_scroll_only=False)]
        ]

# ウィンドウオブジェクトの作成
window = sg.Window('title', layout, size=(300, 450))

# イベントのループ
while True:
    # イベントの読み込み
    event, values = window.read()
    # ウィンドウの×ボタンクリックで終了
    if event == sg.WIN_CLOSED:
        break
# ウィンドウ終了処理
window.close()

実行結果