Cancelling events on a COM Object

Roger Upole rupole at hotmail.com
Fri Aug 17 02:21:45 CEST 2007


Oliver Nelson wrote:

>I have MapPoint working in Python, and I'm trying to cancel events on the map, but I can't seem to make that happen.  I'm
>responding to the events successfully in my panel object.  My code is like this:
>
> global MapPointMod
> MapPointMod = win32com.client.gencache.EnsureModule("{51C0A9CA-F7B7-4F5A-96F4-43927C6FA50F}", 0, 1, 0)
>
> class MyPanel(wx.Panel):
>     def __init__(self, *args, **kwds):
>         # begin wxGlade: MyPanel.__init__
>         kwds["style"] = wx.TAB_TRAVERSAL
>         wx.Panel.__init__(self, *args, **kwds)
>         self.frame = args[0]
>
>         MyMap = MakeActiveXClass(MapPointMod.MappointControl, eventObj=self)
>         self.window_1 = MyMap(self, -1)
>         self.window_1.OpenMap("C:\\TEMP\\GPS_ON.ptt")
> ...
> ...
>     def OnBeforeClick(self, Button, Shift, X, Y, Cancel):
>         print "tada"
>
>
> My event fires just fine, but I can't seem to figure out how to cancel the event so that mappoint doesn't do its stuff with
> it...I've tried setting Cancel based on the mappoint specs, but it doesn't seem to get sent back anywhere...
>
> Any ideas please?
>
> Thanx,
>
> OLIVER

Instead of assigning to the variable name, output parameters need to be
returned from the method

             Roger







More information about the Python-list mailing list