2015-04-30 8 views
0

Я использую python 2.7 и самую последнюю версию wxpython для него (3.0).wxPython DrawRectangle не заполнен черным фоном

Я пытаюсь нарисовать прямоугольник, который не заполнен. Когда я запускаю код ниже, он рисует красный прямоугольник с соответствующей толщиной, но внутри белый, а не мой цвет фона (черный).

def __init__(self, parent): 
    wx.Frame.__init__(self, parent, title="Maze") 
    self.SetBackgroundColour('black') 
    self.Bind(wx.EVT_PAINT, self.OnPaint) 

def OnPaint(self, event=None): 
    self.dc = wx.PaintDC(self) 
    self.dc.Clear() 
    self.dc.SetPen(wx.Pen(wx.RED, 2)) 
    self.dc.DrawRectangle(50, 50, 50, 50) 

Я действительно не понимаю, почему у меня возникает эта проблема, и любая помощь будет принята с благодарностью. Прошу прощения, если это тривиальный ответ, поскольку я новичок в wxpython.

ответ

1

DrawRectangle рисуется текущим ручкой и заполняется текущей кистью. Поэтому вы также должны называть self.dc.SetBrush.

+2

И установив его в 'wx.NullBrush', он сообщит DC, чтобы ничего не рисовать для заполнения прямоугольника. – RobinDunn

Смежные вопросы