mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-27 14:10:07 +01:00
⁉️ Not sure if the generated .rst stuff is intended to have
whitespace like this in it or not, so seperating this from the other
commits, so easy to revert if necessary.
44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
##Andrea Gavana
|
|
#!/usr/bin/env python
|
|
|
|
# This sample uses the random module to draw 100 random lines iinside
|
|
# a wx.Frame client area, as a demonstration of how to handle a wx.PaintDC
|
|
|
|
import wx
|
|
import random
|
|
|
|
class PaintFrame(wx.Frame):
|
|
|
|
def __init__(self, parent, title):
|
|
|
|
wx.Frame.__init__(self, parent, title=title)
|
|
|
|
# Bind a "paint" event for the frame to the
|
|
# "OnPaint" method
|
|
self.Bind(wx.EVT_PAINT, self.OnPaint)
|
|
self.Show()
|
|
|
|
|
|
def OnPaint(self, event):
|
|
|
|
dc = wx.PaintDC(self)
|
|
w, h = self.GetClientSize()
|
|
|
|
# Use a blue pen, for example...
|
|
|
|
dc.SetPen(wx.Pen('BLUE'))
|
|
|
|
# Remember the signature of wx.DC.DrawLine:
|
|
# DrawLine(x1, y1, x2, y2)
|
|
|
|
for i in range(100):
|
|
x1 = random.randint(1, w-1)
|
|
y1 = random.randint(1, h-1)
|
|
x2 = random.randint(1, w-1)
|
|
y2 = random.randint(1, h-1)
|
|
dc.DrawLine(x1, y1, x2, y2)
|
|
|
|
|
|
app = wx.App(False)
|
|
frame = PaintFrame(None, 'PaintDC example')
|
|
app.MainLoop() |