「Python3」Tkinter Ver.8.6(Checkbuttonの作成と設定方法)

Tkinter Python

Checkbuttonとは?

Checkbuttonは、ユーザーが2つの異なる値から選択することを要求するときに使用されます。
多くの場合は、ある事柄に対して、”True” or “False”,”Yes” or “No”の判断に使用されます。

Checkbuttonの実装

<ソースコード>
from tkinter import *
from tkinter import ttk

#メインウィンドウの生成
root = Tk()
#ウィンドウのタイトル
root.title('Application')
#Frame生成
frame = ttk.Frame(
    root,
    padding = (20,20)
    )

def cb_clicked():
    print(val.get())

#True or Falseを得るオブジェクトを生成
val = BooleanVar()
#初期値は空なので'False'を代入
val.set(False)

#Chackbutton生成
chackbutton = ttk.Checkbutton(
    frame,
    text = '男性ですか?', #表示する文字
    width = str('男性ですか?'), #幅
    padding = (10, 10), #パディング
    command = cb_clicked, #チェックボタンを押した時に実行する関数を指定
    onvalue = True, #チェックが入っているときに格納するデータ
    offvalue = False, #チェックが入っいないときに格納するデータ
    variable = val, #データを格納するオブジェクト
    state = "normal" #状態
)

#ウィンドウ内にFrameを表示
frame.grid()
#Frame内にChackbuttonを表示
chackbutton.grid()

#ウィンドウ表示
root.mainloop()
<出力結果>

Checkbutton 説明01

# 押した時
True
False
True
False

Checkbuttonのオブジェクトに、チェックが入っている場合は”True”、チェックが入っていない場合は”False”を格納します。Chackbuttonのオブジェクトに格納されたデータは、”val.get()”で得ることができます。
チェックボタンが押された場合、cb_clicked関数が実行されます。チェックボタンにチェックが入っていれば”Ture”、チェックが入っていなければ”False”をコンソールに出力します。

Chackbuttonオプションを表にまとめます。

オプション 説明
text ウィジェット内に表示されるテキスト text = ‘OK’
textvariable テキストを格納するオブジェクトを指定
width 横幅 width = 20
padding 内側の空白の部分の長さを指定
引数1つ:上下左右全てが同じ
引数2つ:上下と左右が同じ
引数4つ:上下左右各々指定
padding = (30, 10)
command チェックボタンを押した時に呼び出される関数を指定 command = 関数
onvalue チェックが入っているときに格納するデータ onvalue = True
offvalue データを格納するオブジェクト offvalue = False
variable データを格納するオブジェクト variable = val
state 状態(normal, active, disabled) state = “normal”
image 画像
compound 画像の位置(top, bottom, left, right) compound = ‘top’

“state”オプションを表にまとめます。

stateオプション 説明
normal 通常の状態
active マウスカーソルがウィジェットの上にあり、マウスをクリックすることで何らかの動作をさせる
disabled プログラムによってウィジェットを無効化する
focus ウィジェットにキーボードフォーカスをする
pressed ウィジェットは押されている
selected チェックボタンやラジオボタンのようなウィジェットでの “オン” や “チェック有” や “選択中” に当たる
background Windows と Mac には “アクティブな” もしくは最前面のウィンドウという概念がある
背面のウィンドウにあるウィジェットには background 状態が設定され、最前面のウィンドウにあるウィジェットでは解除される
readonly ウィジェットはユーザからの変更を受け付けない
alternate ウィジェット特有の切り替え表示
invalid ウィジェットの値が不正

“compound”オプションは、文字列と画像の位置関係になります。

指定 画像の位置
top 文字列の上に画像を表示する
bottom 文字列の下に画像を表示する
left 文字列の左に画像を表示する
right 文字列の右に画像を表示する

コメント

タイトルとURLをコピーしました