前提・実現したいこと
input_text(テキストボックス)の中の値をlabel2に反映させたいのですが上手く行きません
尚、出来ればbindメソッドを使ってGo to Frame1のボタンウィジェットを押した時label2に反映してからテキストボックスの中の値を削除したいです。
発生している問題・エラーメッセージ
label2の値がlabel2をpackしても表示されない
該当のソースコード
python
1 2```import tkinter as tk 3import PIL.Image, PIL.ImageTk 4import tkinter 5class App(tk.Tk): 6 # 呪文 7 def __init__(self, *args, **kwargs): 8 # 呪文. 9 tk.Tk.__init__(self, *args, **kwargs) 10 11 # ウィンドウタイトルを決定 12 self.title("Tkinter change page") 13 14 # ウィンドウの大きさを決定 15 self.geometry("800x600") 16 17 # ウィンドウのグリッドを 1x1 にする 18 # この処理をコメントアウトすると配置がズレる 19 self.grid_rowconfigure(0, weight=1) 20 self.grid_columnconfigure(0, weight=1) 21#-----------------------------------main_frame----------------------------- 22 # メインページフレーム作成 23 self.main_frame = tk.Frame() 24 self.main_frame.grid(row=0, column=0, sticky="nsew") 25 26 # 猫の名前ラベル 27 label1 = tk.Label(self.main_frame,text = '猫の名前') 28 label1.pack() 29 30 31 # 猫の名前テキストボックス 32 input_text = tk.Entry(self.main_frame) 33 input_text.pack() 34 input_text.insert(tkinter.END,"1234") 35 36 # タイトルラベル作成 37 self.titleLabel = tk.Label(self.main_frame, text="猫育成", font=('Helvetica', '35')) 38 self.titleLabel.pack(anchor='center', expand=True) 39 #btn = tk.Button(self.main_frame, text='名前を出力', command=btn_click) 40 #btn.pack() 41 # フレーム1に移動するボタン 42 self.changePageButton = tk.Button(self.main_frame, text="Go to frame1", command=lambda : self.changePage(self.frame1)) 43 self.changePageButton.pack() 44#-------------------------------------------------------------------------- 45#-----------------------------------frame1--------------------------------- 46 47 # 移動先フレーム作成 48 self.frame1 = tk.Frame() 49 self.frame1.grid(row=0, column=0, sticky="nsew") 50 #テキストボックス名前反映ラベル 51 ** label2 = tk.Label(self.frame1) 52 label2.pack() 53 label2 = input_text.get()** 54 # タイトルラベル作成 55 self.titleLabel = tk.Label(self.frame1, text="Frame 1", font=('Helvetica', '35')) 56 self.titleLabel.pack(anchor='center', expand=True) 57 # フレーム1からmainフレームに戻るボタン 58 self.back_button = tk.Button(self.frame1, text="Back", command=lambda : self.changePage(self.main_frame)) 59 self.back_button.pack() 60#-------------------------------------------------------------------------- 61 62 #main_frameを一番上に表示 63 self.main_frame.tkraise() 64 65 def changePage(self, page): 66 67 68 69 70 ''' 71 画面遷移用の関数 72 ''' 73 page.tkraise() 74 #def btn_click(self) 75 76if __name__ == "__main__": 77 app = App() 78 app.mainloop() 79 80### 試したこと 81 82getメソッドを使いました。 83 84### 補足情報(FW/ツールのバージョンなど) 85 86ここにより詳細な情報を記載してください。
ソースコードはMarkDownのcode機能でブロック化してご提示ください。
あなたの回答
tips
プレビュー