今回の内容
今回はTkinterのメニューバーにサブメニューを追加する方法を紹介します。サブメニューを追加するということは、以下のように動作するということです。
ソースコード
import tkinter as tk root = tk.Tk() root.title("タイトル") MenuBar = tk.Menu(root) FileMenu = tk.Menu(MenuBar,tearoff=0) MenuBar.add_cascade(label="ファイル",menu=FileMenu) FileMenu.add_command(label="新規") EncodeMenu = tk.Menu(FileMenu,tearoff=0) FileMenu.add_cascade(label="文字コード",menu=EncodeMenu) EncodeMenu.add_command(label="UTF-8") EncodeMenu.add_command(label="Shift JIS") root.config(menu=MenuBar) root.mainloop()
解説!
↓のコードをご覧ください。MenuBar = tk.Menu(root) FileMenu = tk.Menu(MenuBar,tearoff=0) MenuBar.add_cascade(label="ファイル",menu=FileMenu) FileMenu.add_command(label="新規")
ここまでは大丈夫だと思います。
問題はここからです。以下のコードをご覧ください。
EncodeMenu = tk.Menu(FileMenu,tearoff=0) FileMenu.add_cascade(label="文字コード",menu=EncodeMenu) EncodeMenu.add_command(label="UTF-8") EncodeMenu.add_command(label="Shift JIS")まず、普通であれば、FileMenu.add_commandで追加しますが、なんとサブメニューを作るためには
FileMenu.add_cancadeを利用します。
ここの操作は、FileMenuをMenuBarだと思ってコードを書くという感じになっています。
言葉で説明するのは難しいので、この記事のソースコードを見て考えてください。
ふと思ったので、メモ代わりに。
お役に立てたらうれしいです。コメント、大歓迎です!
0 件のコメント:
コメントを投稿