Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import wx
- import random
- class Panel(wx.Panel):
- def __init__(self, parent):
- super(Panel, self).__init__(parent, -1)
- self.Bind(wx.EVT_PAINT, self.on_paint)
- self.points = [[0, 0], [10, 25]]
- self.lines = [[random.randint(0, 500) for i in range(4)] for j in range(100)]
- self.x= 1
- self.y = 1
- self.Bind(wx.EVT_LEFT_UP, self.OnLeftDown)
- self.Bind(wx.EVT_RIGHT_UP, self.OnRightDown)
- def OnLeftDown(self, event):
- self.x += 0.1
- self.y += 0.1
- self.Refresh()
- def OnRightDown(self, event):
- self.x -= 0.1
- self.y -= 0.1
- self.Refresh()
- self.foo(self.a)
- def on_paint(self, event):
- # print event
- dc = wx.PaintDC(self)
- gcdc = wx.GCDC(dc)
- # gc = gcdc.GetGraphicsContext()
- gc = wx.GraphicsContext.Create(dc)
- self.Draw(gcdc)
- self.a = dir(gc)
- def Draw(self, dc):
- # pass
- dc.Clear()
- dc.SetUserScale(self.x, self.y)
- # dc.DrawPointList(self.points)
- # print dc.GetMapMode()
- # for points in self.points:
- # print "for X: device = %s, logical %s" % (points[0], dc.DeviceToLogicalX(points[0]))
- # print "for Y: device = %s, logical %s" % (points[1], dc.DeviceToLogicalY(points[1]))
- for line in self.lines:
- dc.DrawLine(*line)
- def foo(self, dicty):
- print len(dicty)
- to_print = []
- count = 0
- for x in dicty:
- # count += 1
- if count < 5:
- to_print.append(x)
- count += 1
- else:
- print to_print
- count = 0
- to_print = []
- class Frame(wx.Frame):
- def __init__(self):
- super(Frame, self).__init__(None, -1, 'Test', size=(550, 600))
- Panel(self)
- if __name__ == "__main__":
- app = wx.PySimpleApp()
- frame = Frame()
- frame.Show()
- app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement