Ich entwickle ein benutzerdefiniertes Plugin in Qt und es gibt diese Situation, wo ich ein Widget erstellen muss, das ein Bild darauf hat. Also verwende ich QLabel als Basisklasse für mein benutzerdefiniertes Widget. Hier ist der Code für Paint-EreignisSo skalieren Sie ein Bild in QLabel
QPixmap pic("/general/source/pic.png");
setAutoFillBackground(true);
QPalette palette;
palette.setBrush(QPalette::Window, QBrush(pic));
this->setPalette(palette);
nun das Bild auf dem QLabel gemacht wird, aber das ist nicht das, was ich wollte.
- Ich möchte das Bild auf die Größe des QLabel skalieren.
- Ich möchte nicht das Bild selbst wiederholen, wenn die Größe des QLabel über die Größe des Bildes hinausgeht.
Bitte helfen.
Dies ist nicht für mich nicht funktioniert :( – chai
Was genau nicht funktioniert? Das Bild skalieren nicht wahr? Es ist nicht richtig skalierten? Sie können‘ t erhalten die Größe der Kontrolle? – Liz
Ok .. bekam es, was schief gelaufen ist .. der richtige Code ist Pixmap skaliert = pic.scaled (Breite, Höhe, Qt :: IgnoreAspectRatio, Qt :: FastTransformation) Und dann Anzeige skaliert – chai