Seite 1 von 1

Menü erstellen, bzw. seitlich erweitern

Verfasst: Donnerstag 5. Juni 2003, 15:03
von lbuega
Hallo, ich habe mir ein Pulldown-Menü geschrieben, bei dem ich nun jedoch bei dem einen oder anderen Punkt eine Erweiterung zur Seite bräuchte, wie z.B. bei Word unter dem Menüpunkt "Einfügen" - "Grafik".
Wie läßt sich das (falls überhaupt) realisieren (evtl. beispielhaft für den Menüpunkt "Drucken")?

Code: Alles auswählen

from Tkinter import *
menuFrame = Frame()
menuLeiste=Menu(menuFrame, font=hmFont, activebackground=col_a_bg, \
                        activeforeground=col_a_fg, bg=col_p_bg, fg=col_p_fg, \
                        relief=GROOVE)
 root.config(menu=menuLeiste)     #Menü anzeigen

menu1=Menu(menuLeiste, font=hmFont, activebackground=col_a_bg, \
                      activeforeground=col_a_fg, bg=col_um_bg, fg=col_um_fg, \
                      relief=GROOVE, tearoff=0)
menuLeiste.add_cascade(label=_('Datei'), underline=0, menu=menu1)
menu1.add_command(label=_('Neu'), font=umFont, underline=0, \
                             command=callback)
menu1.add_command(label=_('Öffnen'), font=umFont, underline=1, \
                             command=callback)
menu1.add_separator()
menu1.add_command(label=_('Drucken'), font=umFont, underline=0, \
                             command=callback)
menu1.add_separator()
menu1.add_command(label=_('Beenden'), font=umFont, underline=0, \
                             command=exit_app)

Re: Menü erstellen, bzw. seitlich erweitern

Verfasst: Freitag 6. Juni 2003, 09:33
von Voges
Hallo!
Prinzipiell müsste das so gehen:
...
menu1=Menu(...)
...
menuDruck=Menu(menu1, ... )
menuDruck.add_command( ... )
menuDruck.add_command( ... )
...
menu1.add_cascade(label=_('Drucken'), menu=menuDruck)
...

Jan

Verfasst: Freitag 6. Juni 2003, 13:07
von Gast
nicht nur prinzipiell, auch de facto :lol: Klasse!

Allerdings bin ich mit dem Verhalten noch überhaupt nicht zufrieden:
  • - das Untermenü öffnet sich beim Überfahren des korrespondierenden Hauptmenüpunktes mit der Maus nicht von alleine
    - nach einem Klick zum Öffnen schließt es sich nicht mehr
    - beim Überfahren mit der Tastatur wird das Untermenü geöffnet, aber auch gleich aktiviert. Dies sollte nicht sein, sondern dass man ganz normal im Hauptmenu weitergehen kann.
    - Zusammengefaßt: Das Verhalten sollte vgl. mit M$ Office-Menüs sein!!!
Leider scheint ein " .bind(<...>, ...) " auf Menüs und Menüpunkte nicht möglich zu sein. Oder gibt es da eine (andere) Möglichkeit?

Verfasst: Freitag 6. Juni 2003, 14:26
von lbuega
Muß noch ergänzen,dass ich auf nem UNIX arbeite. Möglicherweise tritt dieses Verhalten nur da auf!?! Hab nämlich festgestellt, dass dieses Verhalten bei dem Netscape den ich unter UNIX verwende genauso ist.

Trotzdem wäre es schön wenn man dies steuern/ändern könnte.