Seite 1 von 1

QGraphicView-Zoom mit statischen Hintergrundbild

Verfasst: 17. April 2007 10:40
von hilby
Hallo, ich suche die Möglichkeit ein GraphicsView zoombar zu gestalten, wobei das Hintergrundbild unverändert bleiben soll.

(also ähnlich wie bei Photoshop das Karo-Muster im Hintergrund)

Ich habe schon verschiedene Ansätze probiert

also mit :

Code: Alles auswählen

BackgroundBrush = (QPixmap("quad2.gif"));
view.setBackgroundBrush(BackgroundBrush);
.....
view.scale(0.5,0.5);
wird der Hintergrund mit skaliert.

Eine weitere Idee war, das GraphicsView transparent zu machen und das Hintergrundbild vom drunterliegendem Widget zu nehmen - aber ich habe es nicht transparent bekommen....auch nicht mit setMask();

hat irgendwer eine Idee ?

mfg
der hilby

Verfasst: 17. April 2007 12:32
von upsala

Code: Alles auswählen

void QGraphicsScene::drawBackground ( QPainter * painter, const QRectF & rect ) 
und dort den Hintergrund selber zeichnen (mit invertierter Matrix).

Verfasst: 2. Mai 2007 08:58
von hilby
Danke, ich habe es nun mit qss-Stylesheets automatisch hinbekommen,
damit lässt sich echt eine menge machen ;-)

bis denn,
der hilby

wie denn?

Verfasst: 7. Juli 2007 17:49
von thalro
Hey Hilby,

ich habe ein ähnliches problem. ich will bei einem graphicsview ein hintergrundbild zeigen, dass sich mit dem fenster skaliert, also immer komplett zu sehen ist. mit stylesheet habe ich es bisher nicht geschafft. ich habe es hingekriegt in einem qwidget ein hintergrundbild zu zeigen, welches aber immer in orginalgröße gezeigt wird. wenn ich die gleichen styleoptionen bei einem graphicsview angebe erscheint nur ein komischer rand ums fenster.

Wie hast du es denn gemacht?

danke,
thalro