Hallo!
Ich muss zugeben, ich verstehe das Zeichnen in PyQt nicht. Ich habe so viel gelesen und soweit ich es verstanden habe, kann man nur im PaintEvent eines Widgets zeichnen.
Aber ich kann doch nicht alle Zeichenschritte, die sich während der Laufzeit ergeben, in das PaintEvent schreiben?
Folgende Situation:
Ich möchte auf einer Fläche (QImage) nach und nach Linien und Rechtecke hinzufügen lassen und sie auf Wunsch auch wieder entfernen/verschieben können, also irgendwo referenzieren.
Man soll z. B. über Buttons die gewünschte Form auswählen können und sie dann per Mausklick auf eine Stelle im QImage zeichen lassen.
Wie mache ich das?
Dankeschön im Voraus,
Qdeep
Grundlegendes Zeichen (QPainter)
- Defnull
- User
- Beiträge: 778
- Registriert: Donnerstag 18. Juni 2009, 22:09
- Wohnort: Göttingen
- Kontaktdaten:
QImage ist ein simpler image Buffer, keine Multi-Layer Vektor Engine. Wenn du da was rein gemalt hast, ist es drin. Im Prinzip musst du bei jeder Änderung das gesammte Bild oder zumindest rechteckige Bereiche davon neu zeichnen. Um diese Tatsache herum musst du deine Applikation planen und designen.
Tipp am Rande: Wenn du dir um Performance sorgen machst und sehr viele Objekte hast, schau dir mal R-Trees an. Viel Spass
Tipp am Rande: Wenn du dir um Performance sorgen machst und sehr viele Objekte hast, schau dir mal R-Trees an. Viel Spass

Bottle: Micro Web Framework + Development Blog
Was könnte ich denn als "Multi-Layer Vektor Engine" benutzen?
Eigentlich möchte ich nur Linien und Kästen auf eine Fläche zeichnen und immer verschieben/löschen können.
Eigentlich möchte ich nur Linien und Kästen auf eine Fläche zeichnen und immer verschieben/löschen können.
Das hört sich für mich nach einer Aufgabe für das Graphics View Framework an. Erfahrung aber habe ich damit nicht.