Tcl8.6.7/Tk8.6.7 Documentation > Tk C API, version 8.6.7 > EventHndlr
Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API
Tk_CreateEventHandler(tkwin, mask, proc, clientData)
Tk_DeleteEventHandler(tkwin, mask, proc, clientData)
- Tk_Window tkwin (in)
- Token for window in which events may occur.
- unsigned long mask (in)
- Bit-mask of events (such as ButtonPressMask) for which proc should be called.
- Tk_EventProc *proc (in)
- Procedure to invoke whenever an event in mask occurs in the window given by tkwin.
- ClientData clientData (in)
- Arbitrary one-word value to pass to proc.
Proc should have arguments and result that match the type Tk_EventProc:
typedef void Tk_EventProc( ClientData clientData, XEvent *eventPtr);The clientData parameter to proc is a copy of the clientData argument given to Tk_CreateEventHandler when the callback was created. Typically, clientData points to a data structure containing application-specific information about the window in which the event occurred. EventPtr is a pointer to the X event, which will be one of the ones specified in the mask argument to Tk_CreateEventHandler.
Tk_DeleteEventHandler may be called to delete a previously-created event handler: it deletes the first handler it finds that is associated with tkwin and matches the mask, proc, and clientData arguments. If no such handler exists, then Tk_HandleEvent returns without doing anything. Although Tk supports it, it's probably a bad idea to have more than one callback with the same mask, proc, and clientData arguments. When a window is deleted all of its handlers will be deleted automatically; in this case there is no need to call Tk_DeleteEventHandler.
If multiple handlers are declared for the same type of X event on the same window, then the handlers will be invoked in the order they were created.bind, callback, event, handler
Copyright © 1994-1996 Sun Microsystems, Inc.