Danny Sporea wrote:
>
> I have a dialog with a QListWidget with items and a button. When the button
> is pushed, the palette of the QListWidget is changed. Everything works fine,
> unless I apply a stylesheet to the dialog. After that, pushing the button
> does not produce the same results anymore. Unfortunately this is just a
> simple example, mine is a lot more complicated and cannot achieve the desired
> results using a stylesheet on the QListWidget, as opposed on using the
> palette. Is there a way to block a child widget on receiving the parent
> stylesheet and messing up the setPalette and allow normal palette behaviour
> when palette is changed ?
>
Hi, Danny.
Using widget palettes and style sheets together is not actually
supported by Qt, so there will be some inconsistencies when trying to do
this.
In your case what is happening is that the style sheet is preventing the
palette from being propagated from the list view to its viewport, hence
the viewport will not turn red, only the frame around it. To work around
it in your specific case, you can use the following code:
ui.lst.viewport().setPalette(RED_QPALETTE);
Please note, however, that since this is documented to be an unsupported
combination of two styling models, there is no guarantee that the
behavior will not change in later versions.
-- Eskil
_______________________________________________
Qt-jambi-interest mailing list
[email protected]
http://lists.trolltech.com/mailman/listinfo/qt-jambi-interest