J'ai une fenêtre déroulante Gtk à laquelle j'essaie d'attacher une fonction PopupMenuHandler comme suit :
this.scrolledwindow1.PopupMenu += HandlePopupMenu;
et le HandlePopupMenu ressemble à ceci :
[GLib.ConnectBefore]
public void HandlePopupMenu(object o, PopupMenuArgs args)
{
Console.WriteLine("test");
Gtk.Menu mbox = new Gtk.Menu();
Gtk.MenuItem Test = new Gtk.MenuItem("test");
Test.Activated += delegate(object sender, EventArgs e) {
Console.WriteLine("test");
};
mbox.Append(Test);
mbox.ShowAll();
mbox.Popup();
}
Mon problème est que cet événement n'est jamais appelé lorsque je clique avec le bouton droit de la souris sur la fenêtre déroulante, alors que je suppose qu'il devrait l'être en vertu de la règle suivante cette . Il n'y a qu'un seul autre événement qui gère l'événement ScrollEvent, et rien qui gère les boutons du clavier ou de la souris. Quelqu'un peut-il me dire pourquoi cela ne fonctionne pas ?