tkinterのタブ操作について質問です。
###質問内容
遷移前のタブを取得したい
###困った点
設定項目だけをフォームの作りました。
このタブが「離れた時」にイベントを取得して、設定を保存したいと思っています。
tag_name = note.tab(note.select(),"text")
を使うと、次の遷移後のタブは取得できるのですが、遷移前はどうやったら取得できますか?
下記のサンプルコードで言いますと、
def getNoteName(self,event):
ここのeventを使って、遷移前のtab_idを取れないかなと思ったのですが分かりませんでした。
py
1from tkinter import * 2import tkinter.ttk as ttk 3 4class NotebookEventSample(ttk.Frame): 5 def __init__(self, master): 6 super().__init__(master) 7 self.create_widgets() 8 self.pack() 9 10 def create_widgets(self): 11 note = ttk.Notebook(self) 12 note.pack() 13 self.note = note 14 note0 = ttk.Frame(note,width=300,height=300) 15 note1 = ttk.Frame(note,width=300,height=300) 16 note2 = ttk.Frame(note,width=300,height=300) 17 note.add(note0,text="note0",state="normal") 18 note.add(note1,text="note1",state="normal") 19 note.add(note2,text="note2",state="normal") 20 note.bind("<<NotebookTabChanged>>",self.getNoteName) 21 self.label = ttk.Label(self,text="none") 22 self.label.pack() 23 24 def getNoteName(self,event): 25 note =event.widget 26 self.label["text"]=note.tab(note.select(),"text") 27 28 29if __name__ == '__main__': 30 master = Tk() 31 master.title("NotebookEventSample") 32 master.geometry("400x400") 33 NotebookEventSample(master) 34 master.mainloop()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/03 12:58