Canceling events from COM objects

Oliver Nelson oliver-at-hallmarkins.net
Fri Aug 17 00:20:19 CEST 2007


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



More information about the Python-list mailing list