Seite 1 von 1

[gelöst] Grafische Elemente erstellen mit wxPython

Verfasst: Freitag 7. Dezember 2007, 15:02
von Mawilo
Hallo,

ich benötige für ein wx-Programm verschiedene grafische Darstellungen,
deren Länge variiert (Abhängig von einem Minutenwert). Eine Linie oder
ein Rechteck zeichnen, sollte kein Problem sein. Wie kann ich aber andere
Objekte erzeugen (z.B. xxxxx, OOOOOO, ØØØØØØ, «««««, vvvvv, Wellenlinie, u.a.)?

Hier ein Beispiel, wie das Ganze in etwa aussehen soll (es müssen natürlich viel mehr grafische Elemente möglich sein):

Bild


Mawilo

Verfasst: Samstag 8. Dezember 2007, 17:55
von Mawilo
Ich habe mittlerweile eine Möglichkeit gefunden. Das Zauberwort heißt "Stipple".
Voraussetzung ist eine bmp-Datei, die das gewünschte Muster enthält. Diese habe ich selbst mit Gimp erstellt.
Mit folgendem Code wird das Rechteck mit dem Muster gefüllt:

Code: Alles auswählen

    def drawLine(self):
        brush = wx.Brush(self.color)
        brush.SetStipple(self.bmp)
        brush.SetStyle(wx.STIPPLE)
        self.dc.SetBrush(brush)
        pen = wx.Pen(self.color, 1, wx.TRANSPARENT)
        self.dc.SetPen(pen)
        self.dc.DrawRectangle(self.x, self.y, self.width, self.height)
Den Rahmen des Rechteckes habe ich verschwinden lassen. So habe ich in etwa den gewünschten Effekt erzielt.

Mawilo