Hallo Zusammen,
ich habe folgendes Problem: Meine QGraphicsScene bekommt ein Bild als Hintergrund.
Die Scene wird als MainWidget in MainWindow hinzugefügt.
Und je nach Bildgrößer ändert sich dynamisch auch MainWindow size.
Wie kann ich den MainWindow so anpassen, damit ich in MainWindow keinen Scrollbalken bekomme?
MainWindow muss fixedsize haben.
QMainWindow dynamisch den Size anpassen
QMainWindow dynamisch den Size anpassen
Zuletzt geändert von samir_bmw am 10. Mai 2011 13:24, insgesamt 1-mal geändert.
hallo,
ich glaube Sie haben mich falsch verstanden. Ich habe die Methode QGraphicsView::fitInView angeschaut, hab nicht so richtig verstanden.
Hier ist die Methode, die ich implementiert habe.
Dann später in den MainWindow
So habe ich es angepasst. Wenn ich nicht in MainWindow setFixedSize() aufruche, die Scene kachelt das Bild im hintergrund und das will ich nicht.
Wenn ich ein anderen Thema auswähle dann stimmt nicht mehr die Größe. Dann bekomme ich ein teil des Bilde (gekahelt) im oberen und unteren Rand des Scene.
Ich will den Kacheln durch die Scene vermeinden oder die Größe von MainWindow dynamisch anpassen.
ich glaube Sie haben mich falsch verstanden. Ich habe die Methode QGraphicsView::fitInView angeschaut, hab nicht so richtig verstanden.
Hier ist die Methode, die ich implementiert habe.
Code: Alles auswählen
void Scene::updateBackgroundBrush(const QImage &image)
{
QSize imgSize = image.size();
setSceneRect(0, 0, imgSize.width(), imgSize.height());
setBackgroundBrush(QBrush(image));
}
Code: Alles auswählen
QSize imgSize = image.size();
setFixedSize(imgSize.width() + 15,
imgSize.height() + (2 * toolBar->size().height()));
Wenn ich ein anderen Thema auswähle dann stimmt nicht mehr die Größe. Dann bekomme ich ein teil des Bilde (gekahelt) im oberen und unteren Rand des Scene.
Ich will den Kacheln durch die Scene vermeinden oder die Größe von MainWindow dynamisch anpassen.