tkinterメニューはトップレベルのプルダウンメニューです。 従来のGUIアプリに期待されるように、タイトルバーのすぐ下に表示されます。
メニューには複数のサブメニューを含めることができ、各サブメニューには項目を含めることができます。 メニュー項目はコールバックメソッドに関連付けることができます。つまり、メニュー項目をクリックすると、Pythonメソッドが呼び出されます。
関連コース: Tkinterを使用したPythonデスクトップアプリ
例
前書き
メニューの追加は非常に簡単ですが、初めて行う場合は少し混乱する可能性があります。 まず、次の行を使用してトップメニューを作成します。
1 2 3
|
self.master = master menu = Menu(self.master) self.master.config(menu=menu)
|
次に、このメニューにメニューを追加できます。
1 2 3 4 5
|
fileMenu = Menu(menu) menu.add_cascade(label="File", menu=fileMenu)
editMenu = Menu(menu) menu.add_cascade(label="Edit", menu=editMenu)
|
これらの各サブメニューには、次の項目を含めることができます。
1 2 3 4
|
fileMenu.add_command(label="Item") fileMenu.add_command(label="Exit", command=self.exitProgram) editMenu.add_command(label="Undo") editMenu.add_command(label="Redo")
|
メニュー項目はクリック可能で、ボタン(command =)と同じ方法でコールバックメソッドを指定できます。 クリックするとPythonメソッドが呼び出されます。
以下のメニュー例は、基本的なtkinterウィンドウにメニューを追加します。 クリック可能なメニュー項目が1つありますが、完全なメニューが表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
from tkinter import *
class Window(Frame): def __init__(self, master=None): Frame.__init__(self, master) self.master = master
menu = Menu(self.master) self.master.config(menu=menu)
fileMenu = Menu(menu) fileMenu.add_command(label="Item") fileMenu.add_command(label="Exit", command=self.exitProgram) menu.add_cascade(label="File", menu=fileMenu)
editMenu = Menu(menu) editMenu.add_command(label="Undo") editMenu.add_command(label="Redo") menu.add_cascade(label="Edit", menu=editMenu)
def exitProgram(self): exit() root = Tk() app = Window(root) root.wm_title("Tkinter window") root.mainloop()
|
Tkinterの例をダウンロードする
Hope this helps!
Source link