Move event will not be performed
Franz Steinhaeusler
franz.steinhaeusler at gmx.at
Wed Mar 5 06:05:09 PST 2008
Hello, how is it possible to send to an object (here a frame) an Move Event.
The print statements outputs the same values (if the frame is dragged or the move event is called
on the end of __init__, but nothing happens. What is wrong here?
regards,
import wx
class Panel(wx.Panel):
def __init__(self,parent):
wx.Panel.__init__(self,parent)
self.Bind (wx.EVT_MOVE, self.OnMove)
def OnMove (self, event):
print "move1"
event.Skip()
class Frame(wx.Frame):
def __init__(self,parent):
wx.Frame.__init__(self,parent,-1)
panel = Panel(self)
self.Center()
self.Bind (wx.EVT_MOVE, self.OnMove)
mv = wx.MoveEvent((400, 200), winid = -201)
mv.SetEventObject(self)
#print self.GetEvtHandlerEnabled()
print "hi:", wx.CallAfter(self.ProcessEvent, mv)
#print "hi:", self.ProcessEvent(mv)
def OnMove (self, event):
print "move"
#print event.GetPosition()
#print event.EventObject
#print event.EventType
#print event.Id
#print event.Rect
#print event.ClassName
#print event.IsCommandEvent()
#print event.GetSkipped()
#print event.ShouldPropagate()
print "end move"
event.Skip()
app = wx.App(redirect = False)
frame = Frame(None)
frame.Show(True)
app.MainLoop()
--
Franz Steinhaeusler
More information about the wxpython-users
mailing list