python tkinterで、labelのtextを更新した際に画面から消える。

実現したいこと

pythonのtkinterを用いて、GUIを作成しています。
entryに入力された数字をlabelに表示する機能を作りたいと考えています。

発生している問題・分からないこと

下記コードを利用してlabelのtextを更新しようとした際に、変更前がn桁の数字で、変更後の桁数がnより小さい場合にflame内からlabelが消失してしまいます(したように見えている?少なくとも視認できない)。変更前と同じ桁数であったり桁数が大きい場合は想定通り表示されるのですが原因がわかりません。

該当のソースコード

python

1import tkinter as tk 2 3def push_button1():4 count1.set(int(entry.get()))5 print(count1.get())6 7main_W , main_H = 600, 2608main_window1 = tk.Tk()9main_window1.title('test')10main_window1.geometry(str(main_W) + 'x' + str(main_H))11main_window1.resizable(width=False, height=False)12 13count1=tk.IntVar()14count1.set(0)15 16frame1 = tk.Label(main_window1, width=50, height=10, relief='ridge', bd=2,bg='white')17frame1.place(x=23, y=24)18 19label_count1 = tk.Label(frame1, textvariable=count1, font=('MSゴシック','35','bold'), bg='white')20label_count1.place(x=63, y=40, anchor=tk.CENTER)21 22entry = tk.Entry(main_window1)23entry.place(x=80,y=220)24button1 = tk.Button(main_window1, text='実行' ,command=push_button1)25button1.place(x=40,y=220)26 27main_window1.mainloop()

試したこと・調べたこと

上記の詳細・結果

変更を行う関数を以下のようにして正常に変更されるかテストしましたが最初の一回(100を1に変更する際)はやはりlabelが見えなくなってしまいました。また、Intvarを用いずにtextに直接数字を与える形でもテスト済みです。
def push_button1():
count1.set(1)

補足

特になし

コメントを投稿

0 コメント