Image Skalieren Qt
-
Hey,
und zwar habe ich in einem Window mehrere Layouts. Man kann ja im Designer das Fenster dann so klein Schieben, so dass alles noch optimal dargestellt wird. Nun benötige ich ein Bild, was über die Gesamte Breite des Fensters gehen soll, was aber nur so groß ist wie nötig. Also so, dass alle Elemente richtig dargestellt werden, und das Bild die volle Breite einnimmt. Wie handhabt man so etwas? Gibt es dafür direkt im Designer eine Einstellung?
Ich hoffe ihr wisst, was ich meine, ansonsten kann ich gerne mehr Infos geben.Viele Grüße
-
Achja Bild ist einfach ein Pixmap über einem Label.
-
Reicht dir ein QLabel + scaledContents=true?
-
Nein das habe ich sowieso schon drin. Mir geht es darum, dass sich die Größe des Bildes nach der Minimalen Größe des Formulars richtet. Verstehst du, was ich meine?
-
auch wenn ich keinen Plan hab, wovon du redest, könnte
QWidget::minimumSizeHint()
was für dich sein.
-
Hier mal ein Skizze, wie es aussehen sollte:
http://i47.tinypic.com/2uj76n8.png
so sieht es aber aus:
http://i45.tinypic.com/bdmwq1.png
Die Breite des Layouts richtet sich danach, dass das Image in seiner Vollen Breite dargestellt wird, oder nach dem Wert maximumWidth des Bildes. Das Formular könnte aber viel Kleiner sein, in dem man alles zusammen schiebt. Die maximale Breite des Bildes soll also auf die Minimal mögliche des Formulars gesetzt werden.
-
dann ist das, was ich gepostet habe das, was du brauchst.
Mit minimumSizeHint die minimale Größe des Fensters ermitteln und die größe des Pixmaps entsprechend setzen.
Voraussetzung: Das Bild ist zu dem Zeitpunkt, an dem du minimumSizeHint aufrufst noch nicht vorhanden