ich haette ja so total Lust ein eigenes Widget zu basteln. Das ist auch soweit alles kein Problem, bis auf eine kleine Sache:
Ich Zeichne das Widget komplett per DC (erstmal Zeichne ich per MemoryDC ein Bitmap, dass ich dann beim Paint-Event gepuffert auf das Control malen lasse).
Text schreiben ist ja nun auch garkein Problem, geht alles toll und einfach... aber nur eine Sache nicht: Die Schriftfarbe!
Wie kann ich die Schriftfarbe einstellen? Ich will doch nicht nur schwarz auf das Widget schreiben. Ich hab aber nun auch keine Lust, extra Fancy-Text oder sowas zu verwenden. Geht das nicht einfacher?
Zur allgemeinen Veranschaulichung, hier meine Methode create_bitmap:
Code: Alles auswählen
def create_bitmap(self):
bmp = wx.EmptyBitmap(*self.GetClientSize())
print bmp.GetSize()
dc = wx.MemoryDC(bmp)
dc.SetPen(wx.Pen("white"))
dc.SetFont(wx.FFont(10, wx.FIXED))
dc.Clear()
dc.DrawRectangle(0, 0, bmp.GetWidth()-2, bmp.GetHeight()-2)
gradient = wx.Bitmap("gradient.bmp")
gradient.SetHeight(bmp.GetSize().y-2)
i=0
while i < bmp.GetWidth()-2:
dc.DrawBitmap(gradient, i+1, 1)
i+=1
dc.DrawText(self.label, 2, 2)
dc.SelectObject(wx.NullBitmap)
return bmp
NKoehring
PS: foregroundcolour und was es da noch so alles gibt, funktioniert nicht...