YEAH, habs z.T. geschafft. Es geht doch: Nach intensivem Quellcode-Studium von Tkinter.py hab ich rausgefunden wie man ein "command" an die Items im Pulldown-Menü eines OptionMenu binden:
Code: Alles auswählen
from Tkinter import*
root = Tk()
root.config(bg="grey")
auswahl_1 = StringVar()
liste_1 = ["item1", "item2", "item3"]
aussehen = {"bg":"grey","font":"arial 10 bold","relief":SUNKEN, "width":15, "activebackground":"darkblue", "activeforeground":"white"}
auswahl_1.set("Auswahl treffen")
def holla(self):
print "HEHE!!!"
#'command' ist das einzige keyword das unterstützt wird!
com = {"command":holla}
menu_1 = OptionMenu(root, auswahl_1, *liste_1, **com)
menu_1.pack(padx=20, pady=20)
menu_1.config(aussehen)
#wie kann ich auf das interne menu zugreifen??? Z.B. um Farbe zu ändern etc.
#menu_1.self.menu.add_command(label="TEST", command=holla)
root.mainloop()
Aber damit ist mein Aussehen-Problem noch nicht behoben
Voges, könntest Du mal bitte ein Blick in die Tkinter.py (codzeile s.voriger Beitrag) werfen, da ist nämlich die OptionMenu-Klasse. Dort wird u.a. das Pulldownmenü als ganz normales Objekt der Klasse "Menu" erstellt, aber wie kann ich da von aussen darauf zugreifen, um z.B. den Hintergrundfarbe/Schrift/etc. zu konfigurieren?
Du scheinst da mehr die Ahnung von zu haben wie das funktioniert.