Python ttk.Checkbutton 初期状態の設定
ttk.Checkbuttonを使用し、初期値をセットしようとしているのですが、不定な状態になってしまいます。(チェックボックス内に黒い矩形がある状態)
この状態になる条件はどのような場合でしょうか
サンプルコードは、不定な状態を知っていただくためのコードです。このコードでは、chk_viewをself.chk_viewにすれば、初期値どおりにセットされます。このことから推察すると、chkbutton表示時に、tk.BooleanVar()のオブジェクトが無効である場合に不定な状態になると思うのですが。
問題となっているコードでは、tk.BooleanVar()のインスタンスは、selfで宣言されておりますが、不定な状態で表示されてしまいます。
ご存知の方がいらっしゃれば、ご教示をお願いします。
サンプルコード
# coding: UTF-8
import tkinter as tk
from tkinter import ttk
class CreateScreen(object):
def createMainWindow(self):
obj = ttk.tkinter.Tk()
obj.geometry('300x200')
return obj
def _Dialog(self, parent):
dev_dialog = tk.Toplevel(parent)
dev_dialog.geometry('500x400')
_InFrame_ = ttk.Frame(
dev_dialog,
)
chk_view = tk.BooleanVar()
chk_view.set(False)
chkbutton = ttk.Checkbutton(_InFrame_,text = 'chk',variable = chk_view)
chkbutton.pack()
_InFrame_.pack()
dev_dialog.resizable(0,0)
dev_dialog.grab_set()
if __name__ == '__main__':
screen_obj = CreateScreen()
MainWindow_obj = screen_obj.createMainWindow()
screen_obj._Dialog(MainWindow_obj)
MainWindow_obj.mainloop()