Esta pregunta se refiere aprogramación del estilo de fondo QWidget/QScrollArea transparente no tiene ningún efecto
- http://www.qtcentre.org/threads/18151-QScrollArea-misbehaving-background-style
- http://www.qtforum.org/article/34443/cannot-change-background-color-of-a-qscrollarea-with-setstylesheet.html
que estoy pidiendo aquí porque creo que la comunidad SO podría tener una forma para arreglar este comportamiento
Así que me gusta establecer el color de fondo de un ScrollArea para que sea transparente o una imagen de fondo personalizada, ya que contendrá algunos banners. Lo tengo funcionando en Qt Creator (Designer) ya! :-):
Pero al implementar la aplicación para el simulador no va a funcionar, el son se queda gris, gris oscuro:
Aquí es mi árbol de diseño:
Y aquí es la hoja de estilo que estoy usando (que se adjunta & establecido en la ventana principal):
QMainWindow {
background: transparent url(:/ui/designs/images_from_android/bg_plain_empty.png) top left;
}
QWidget#centralWidget {
background-color: transparent;
}
QPushButton {
color: red;
border: 1px solid green;
}
QFrame#top_header {
background: transparent url(:/ui/designs/images_from_android/bg_title_bar_landscape.png) top left repeat-x;
}
QWidget#top_banner_scroll1,
QWidget#top_banner_scroll2 {
background: transparent url(:/ui/designs/images_from_android/stripe_bg.png) top left repeat-x;
}
Esto es bastante desconcertante. Y como Qt Designer me está mostrando el diseño adecuado ...
embargo, que hará que todos los niños que transparentes tienen ninguna hoja de estilo especializada (thoughthough uno podría empacar los niños en algún otro contenedor que tenga las hojas de estilo correctas) –
Sí, childern heredará la hoja de estilo del padre si no tiene su propia hoja de estilo. –
La respuesta de Johannes funciona correctamente sin afectar a todos los niños dentro del área de desplazamiento. –