Hier ist ein Prototyp für eine Menü Applikation:
1 #!/usr/bin/env python
2
3 import Tkinter as tk
4 import tkMessageBox
5
6 class MenuApp(object):
7
8 def __init__(self):
9 self.root = tk.Tk()
10 self.root.title("A app prototype")
11
12 menubar = tk.Menu(self.root)
13 self.root.config(menu=menubar)
14
15 # File
16 filemenu = tk.Menu(menubar, tearoff=0)
17 menubar.add_cascade(label="File", menu=filemenu)
18 filemenu.add_command(label="new", command=self.dummy)
19 filemenu.add_command(label="open", command=self.dummy)
20 filemenu.add_command(label="Exit", command=self.root.destroy)
21
22 # Edit
23 editmenu = tk.Menu(menubar, tearoff=0)
24 menubar.add_cascade(label="Edit", menu=editmenu)
25 editmenu.add_command(label="undo", command=self.dummy)
26 editmenu.add_command(label="redo", command=self.dummy)
27
28 # Help
29 infomenu = tk.Menu(menubar, tearoff=0)
30 menubar.add_cascade(label="Help", menu=infomenu)
31 infomenu.add_command(label="Help", command=self.dummy)
32 infomenu.add_command(label="About", command=self.about)
33
34 # text field
35 self.textfield = tk.Text(
36 self.root, width = 79, height = 20,
37 )
38 self.textfield.pack()
39 self.textfield.insert(
40 tk.END,
41 (
42 "Tk demo.\n\n"
43 "Only the menu points File/Exit and Help/About are alive."
44 )
45 )
46
47 self.root.mainloop()
48
49 def dummy(self):
50 self.textfield.insert(
51 tk.END, "\nThis function is not implemented.\n"
52 )
53
54 def about(self):
55 tkMessageBox.showinfo(title = "about", message = "This is just a ")
56
57
58
59 if __name__ == "__main__":
60 MenuApp()
Information zum Thema Menü findest du hier: http://effbot.org/tkinterbook/menu.htm Allerdings mit Sternchen import.