[Gelöst] QLabel oder QLCDNumber "biegen".

Alles rund um die Programmierung mit Qt
Antworten
'Prest1ge.
Beiträge: 20
Registriert: 24. Mai 2012 14:37

[Gelöst] QLabel oder QLCDNumber "biegen".

Beitrag von 'Prest1ge. »

Hallo Community. :)

Ist es denn möglich ein QLabel oder ein QLCDNumber zu "biegen"?
Also quasi so zu "Deformieren" das es in etwa so aussieht wie hier:

Bild

Sicher könnte man dazu eine Grafik mit QPixmap laden,
jedoch ist die Idee ein Datum "um" eine Analoguhr zu "formen".

Da sich dieses ja aktualisieren soll geht das mit einer Grafik schlecht.
Zuletzt geändert von 'Prest1ge. am 31. Mai 2012 12:18, insgesamt 1-mal geändert.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: QLabel oder QLCDNumber "biegen".

Beitrag von franzf »

Mit den Mitteln, die dir QLabel bietet, geht das nicht. So etwas musst du selber zeichnen. Entweder ein eigenes Widget+paintEvent, oder eben in ein QPixMap rendern und das anzeigen. Damit das regelmäßig aktualisiert wird, musst du halt mit einem QTimer arbeiten.
'Prest1ge.
Beiträge: 20
Registriert: 24. Mai 2012 14:37

Re: QLabel oder QLCDNumber "biegen".

Beitrag von 'Prest1ge. »

Danke für deine Antwort franzf :wink:

Ich habe vergessen mit anzufügen, dass sich diese Analoguhr in der Größe auch ändern lässt.
Also müsste sich dazu eben auch die Transformation dieser Idee mit dem Datum ändern,
da sich ja bei änderung der Größe auch der Winkel bzw. der Grad der Uhr ändert.

Schade eigendlich, wäre bestimmt ein netter Effekt gewesen aber ich
werde das Datum dann wohl ohne ne transformation mit einbauen. :|
Troll.Soft
Beiträge: 190
Registriert: 18. Juni 2008 09:52
Wohnort: Hamburg

Re: QLabel oder QLCDNumber "biegen".

Beitrag von Troll.Soft »

Das geht mit Qt-Mitteln. Stichwort QSvgWidget Class Reference. Zieh Dir alles über SVG rein, was Qt bietet und Dein Problem ist gelöst.
tschüß
Troll.Soft
'Prest1ge.
Beiträge: 20
Registriert: 24. Mai 2012 14:37

Re: QLabel oder QLCDNumber "biegen".

Beitrag von 'Prest1ge. »

Danke ihr beiden, ich habs inzwischen ganz gut mit einem QPainter gelöst. :D
Dieser kann nämlich wirklich (im wahrsten Sinne des Wortes) "zeichnen".

Ich lasse diesen also per drawText() einfach einen string aus dem Datum zeichnen,
und "forme" mir das Ergebnis per rotate() und translate() an die richtige Stelle. :)

Besten Dank nochmals,
und schöne Grüße. :wink:
Antworten