QGraphicView-Zoom mit statischen Hintergrundbild

Alles rund um die Programmierung mit Qt
Antworten
hilby
Beiträge: 31
Registriert: 31. Mai 2006 16:26

QGraphicView-Zoom mit statischen Hintergrundbild

Beitrag 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
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Code: Alles auswählen

void QGraphicsScene::drawBackground ( QPainter * painter, const QRectF & rect ) 
und dort den Hintergrund selber zeichnen (mit invertierter Matrix).
hilby
Beiträge: 31
Registriert: 31. Mai 2006 16:26

Beitrag von hilby »

Danke, ich habe es nun mit qss-Stylesheets automatisch hinbekommen,
damit lässt sich echt eine menge machen ;-)

bis denn,
der hilby
thalro
Beiträge: 11
Registriert: 7. Juli 2007 17:18

wie denn?

Beitrag 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
Antworten