[Gtk-sharp-list] GTK# mouse event in drawing area

trampster trampster at gmail.com
Mon Mar 16 09:13:59 EDT 2009

 have a DrawingArea which I would like to received mouse events. From the
tutorials I have found that the KeyPressEvent will also catch mouse events.
However for the following code the handler is never called.

static void Main ()
    Application.Init ();
    Gtk.Window w = new Gtk.Window ("");

    DrawingArea a = new CairoGraphic ();
    a.KeyPressEvent += KeyPressHandler;

    w.Resize (500, 500);
    w.DeleteEvent += close_window;
    w.ShowAll ();

    Application.Run ();

private static void KeyPressHandler(object sender, KeyPressEventArgs args)
    Console.WriteLine("key press event");   

I have tried a bunch of things from reading different forums and tutorials

Adding a EventBox to the windows and putting the DrawingArea in the event
box and subscribing to the KeyPressEvent for the EventBox. (didn't work)

Calling AddEvents((int)Gdk.EventMask.AllEventsMask); on any and all widgets

I did find that subscribing to the Windows KeyPressEvent did give me
keyboard events but not mouse click events.

All the relevant pages in the mono docs give me errors so I'm a bit stuck
View this message in context: http://www.nabble.com/GTK--mouse-event-in-drawing-area-tp22537881p22537881.html
Sent from the Mono - Gtk# mailing list archive at Nabble.com.

More information about the Gtk-sharp-list mailing list