Мне нужно нарисовать изображение (чтобы прокомментировать его) в прокручиваемой панели. У меня проблемы с ним, так как он ведет себя неправильно, когда я увеличиваю или уменьшаю масштаб. он перестает рисовать, а затем показывает его через некоторое время в неправильном месте. прямо в верхнем левом углу окна. и не правильно рисует линии. ниже приведен код функции (onLeftDown
) (кнопка, которая должна рисовать). событие правой кнопки (увеличение). надеюсь, что это достаточно ясно.
у вас есть идеи, что происходит, и как мне это решить?
заранее спасибо
def OnLeftButtonEvent(self, event):
self.curLine = []
self.x, self.y = event.GetPositionTuple()
self.CaptureMouse()
def OnMotion(self, event):
if self.HasCapture() and event.Dragging():
dc = wx.BufferedDC(None,self.buffer)
dc.SetUserScale(self.scale,self.scale)
# to zoom in and out ( increases whenever someone presses the right mouse button
dc.BeginDrawing()
dc.SetPen(wx.Pen(wx.BLUE, 3))
coords = (self.x, self.y) + event.GetPositionTuple()
self.curLine.append(coords)
dc.DrawLine(*coords)
self.x, self.y = event.GetPositionTuple()
self.SetXY(event)
dc.EndDrawing()
def OnRightDown(self,event):
print self.scale
self.scale=self.scale*2.0
self.initDrawing()
self.maxHeight=self.maxHeight*2
self.maxWidth=self.maxWidth*2
self.HasCapture() and event.Dragging():
что означает эта строка? - person SilentGhost   schedule 11.01.2010