Contextmenü Dopplung

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
Antworten
MundM
User
Beiträge: 7
Registriert: Montag 28. März 2011, 08:07

Hi, ich möchte ein Kontextmenü für einige Widget-Elemente und den Hintergrund haben, auf dem diese platziert werden.
Leider habe ich dabei den sehr merkwürdigen Effekt, dass das Kontextmenü des Hintergrundes nur dann aktiviert wird, wenn ich auf die einzelnen Widgets klicke, wodurch natürlich 2 Menüs angezeigt werden :(
Bild

Meine Herangehensweise ist dabei wie in dieser Anleitung (ganz unten):
http://learngtk.org/pygtk-tutorial/menuexamples.html

Der Aufbau ist dabei wie folgt:
MyFrame - ScrollWindow - MyWidget(grünes)
Das MyWidget hat dabei eine EventBox und meldet sich für die Button_Events an:

Code: Alles auswählen

...
self.connect("button-press-event", self.on_mouse_press)
self.set_events(gtk.gdk.POINTER_MOTION_MASK|gtk.gdk.BUTTON_PRESS_MASK|gtk.gdk.BUTTON_RELEASE_MASK)
Der Frame macht dann genau dasselbe mit sich selbst (habe es auch schon am ScrollWidget getestet).

Hat da jemand eine Idee, warum die Signale so durcheinander gehen?
Antworten