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

Reply via email to