我用的Qt Creator,Qt版本是4.8.1,操作
系统环境是
Ubuntu 10.04。会使用QSS编写样式表,懂得QSS基本语法。
目前在编写一个软件
界面,为了方便,所有QSS样式均写在独立的QSS文件中。
现在
开发一个的软件界面,需要用到QScrollArea。为了美观,需要将它
显示内容的区域
背景色变成为透明。
我知道使用样式表background-color:transparent 可以使控件背景透明:
- scrollArea->setStyleSheet(QString::fromUtf8("background-color:transparent;"));
也知道像上面一样的这样设置会使,scrollArea所包含的所有子控件的背景也变成透明。
但百思不得其解的是:
(1)直接在程序里调用QScrollArea的setStyleSheet()设置ScrollArea的样式表会有效果,但在我的QSS文件里这样写就没效果。
- QScrollArea#scrollArea { background-color:transparent; }
是不是Qt不支持ScrollArea的QSS语法?
(2)如何设置QScrollArea,让它
只有内容区域的background是透明的,它的子控件包括滚动条的background不受影响?