[Python-de] Tkinter: Widget im Submenu

Jan D. Wegner Jan.Wegner at zuken.de
Thu Nov 14 14:49:30 EST 2002


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hi,

Ich möchte ein Tkinter.Widget (z.B.. Button oder Frame)  auf
einem Untermenue plazieren. Das Unetrmenue hängt an einem
Popup Menü.

Leider ist's nun so, das ich unter Windows
(NT 4, Py2.2, Tk 8.3) nichts davon zu sehen
bekomme und unter Solaris (Solaris 5.6, py 2.2,
Tk 8.3) genau das sehe, was ich sehen will.

Was mach ich falsch?

sollte das nicht grundsätzlich gehen?

- -----8<----
# Problem mit Widget auf (Sub-) Menu
import Tkinter

def hello_cb( ):
    print "hello!"

root = Tkinter.Tk( )
frame = Tkinter.Frame( root,
                       width=200,
                       height=200
                       )

frame.pack( )

#popup menu w/o menubar
menu0 = Tkinter.Menu( frame, tearoff=0)
menu1 = Tkinter.Menu( menu0, tearoff=0)
menu2 = Tkinter.Menu( menu0, tearoff=0)

menu2.add_command( label="sub one",
                   command = hello_cb)

menu2.add_command( label="sub two",
                   command = hello_cb)

#
# the tricky part of the deal
frm = Tkinter.Frame( menu1 )
frm.pack( )
btn = Tkinter.Button( frm,
                      text = ' 16 tons',
                      command = hello_cb)
btn.pack( )


#OK! make a 'simple' one
menu0.add_command( label="First 1",
                   command=hello_cb)

#doesn't work
menu0.add_cascade( label="Second is Sub ...",
                   menu = menu1)
#OK!
menu0.add_cascade( label="Third is Sub ...",
                   menu = menu2)

# pop it up
def showMenu(event):
    menu0.post(event.x_root, event.y_root)

frame.bind("<Button-3>", showMenu)


Tkinter.mainloop()

- ----->8----

froindlichst,

Jan (Wegner:)
- --
 ---*... and may all your GUIs be fast and friendly.*----

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (MingW32)
Comment: Using GnuPG with Netscape - http://enigmail.mozdev.org

iEYEARECAAYFAj3TqeoACgkQzbRQw0jcNQSedgCcCqagcl/JMdr5ygohWO09+XC9
jQ4An1jvJG1OX9VtSA1ZHSuNQyqQ2AU0
=LSDo
-----END PGP SIGNATURE-----





More information about the Python-de mailing list