Ist es möglich, die Deckkraft von qt-widgets?
Ich weiß, dass es eine Funktion gibt QWidget::setWindowOpacity(qreal level)
aber wie geschrieben, die in der Dokumentation dieser funktioniert nur für windows.
Gibt es eine Möglichkeit, um widgets, die liegen im inneren layouts zu undurchsichtig?
Was ich versuche zu tun, ist eine animation, wo die widgets sind, die eingeblendet werden. Ich habe einmal das mit ein Einstellungen-dialog und dort funktionierte es.
So, denken Sie, gibt es eine Möglichkeit oder ein work-around zu erreichen Deckkraft für widgets innerhalb von layouts? Wie würden Sie das tun?
Vielen Dank im Voraus!
- Wenn du keinen hintergrund hast, die unter-widgets, vielleicht kann man ändern, widget Farbe ab Hintergrundfarbe.
- Es ist eine ähnliche Frage Animieren Transparenz.. mit einem code Beispiel.
InformationsquelleAutor Exa | 2010-12-21
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie einfach QGraphicsOpacityEffect um dies zu erreichen Wirkung.
Gut für widgets innerhalb mainwidow zu haben scheinen
setAutoFillBackground(False)
standardmäßig.machen es verblassen in fadeout u müssen, um zu verwenden
QGraphicsOpacityEffect
zusammen mitsetAutoFillBackground(True)
ein kleines Beispiel: schreiben Sie innerhalb des widget aufgerufen, in der mainwindow -
setAutoFillBackground
auf ein Kind ein zentrales widget hat den trick für mich: Deckkraft-Effekt funktioniert nun auch für das widget. Keine Ahnung warum die Einstellung erforderlich ist?SetWindowOpacity
funktioniert bei mir in Linux. Ich verwendete code wie folgt ändern-Fenster Opazität, (Wert von 0 bis 100):In Qt5 Sie können css verwenden, um widgets transparent