Label skalieren??
Codeschnippsel nicht, aber einen Lösungsansatz.
Das Problem am SIGNAL valueChanged(int) is ja, dass es einen int weiterreicht. Dieser int wird im SLOT als Parameter übergeben.
Dieser int (der Wert aus der SpinBox) stellt wahrscheinlich die Skalierung in % dar (100=Original, 50=Halbe Größe, 200%=Doppelte Größe, ...).
Speicher doch dein Bild, welches geladen wird, als private Member (QPixmap m_pix) deiner Klasse.
Definier dir einen SLOT resizeImage(int), welchen du mit dem SIGNAL(valueChanged(int)) der SpinBox connectest.
In diesem SLOT setzt du auf dein Label eine skalierte Version deines Bildes (m_label->setPixmap(m_pix.scaled(width, height)), wobei width und height aus dem Prozentwert berechnet werden).
Ich hoffe dieser Lösungsansatz reicht dir.
Grüße
Franz
Das Problem am SIGNAL valueChanged(int) is ja, dass es einen int weiterreicht. Dieser int wird im SLOT als Parameter übergeben.
Dieser int (der Wert aus der SpinBox) stellt wahrscheinlich die Skalierung in % dar (100=Original, 50=Halbe Größe, 200%=Doppelte Größe, ...).
Speicher doch dein Bild, welches geladen wird, als private Member (QPixmap m_pix) deiner Klasse.
Definier dir einen SLOT resizeImage(int), welchen du mit dem SIGNAL(valueChanged(int)) der SpinBox connectest.
In diesem SLOT setzt du auf dein Label eine skalierte Version deines Bildes (m_label->setPixmap(m_pix.scaled(width, height)), wobei width und height aus dem Prozentwert berechnet werden).
Ich hoffe dieser Lösungsansatz reicht dir.
Grüße
Franz
hallo,
danke für den Ansatz, hab es mal ausprobiert.
meine MemberVariable:
mein connect
hab ich das jetzt alles richtig verstanden??(das mit dem speichern hab ich glaub nicht ganz verstanden)
lg
nici
danke für den Ansatz, hab es mal ausprobiert.
meine MemberVariable:
Code: Alles auswählen
protected:
const QPixmap _mPix;Code: Alles auswählen
connect(spinBox, SIGNAL(valueChanged(int)),
imageLabel, SLOT(resizeImage(int)));Code: Alles auswählen
void TabEins::resizeImage(int){
imageLabel->setPixmap(_mPix.scaled(100,100));
}lg
nici
Hmm mir fällt nichts ein ^^
wofür?
aber warum const???? und warum protected??? so kan nst es doch net abändern...
reichts net es private zu machen oder gibts spez. Gründe weshalb es protected und const sein muss?
Code: Alles auswählen
protected:
const QPixmap _mPix;reichts net es private zu machen oder gibts spez. Gründe weshalb es protected und const sein muss?
-
Ginsengelf
- Beiträge: 79
- Registriert: 2. Mai 2007 10:21
Code: Alles auswählen
void TabEins::resizeImage(int){
imageLabel->setPixmap(_mPix.scaled(100,100));
}