首页| 论坛| 消息

标题:qt控件css样式表设计在有QScrollArea中就会失效
作者:jinzhu1911
日期:2017-03-08 21:31
内容:

qt设计的界面,控件的样式都是通过css样式表文件设计的,在程序初始化用qApp->setStyleSheet()对所有窗口控件应用样式表,
但是有的控件一旦放到QScrollArea中,控件的样式表设计就失效,需要在单独对该控件调用setStyleSheet,这是为什么?有没有什么更好的解决办法,谢谢!


#1 [liudianwu 03-09 09:14]
是这样的,Qt的BUG
#2 [rotung 03-09 09:45]
Qt里面有这个BUG??( ⊙ o ⊙ )! 目前使用似乎没遇到过呀.
如下是我之前使用过的qss:
里面设置了QScrollArea式样以及滚动条QScroll式样,然后是QScrollArea容器中的其他控件的式样。最后在程序初始化用qApp->setStyleSheet()对所有窗口控件应用样式表。 都是可以生效的。
/**************************************************************************
* style setting of scrollArea
**************************************************************************/
QScrollArea#scrollArea_manager,#scrollArea_ImgShow
{
border: hidden;
background-color: #101010;
}
/******************************************************************************
* style setting of QScrollBar
****************************************************************************/
QScrollBar:vertical
{
border: 2px solid #484848;
background: #484848;
width: 16px;
margin: 20px 0px 20px 0px;
}
QScrollBar::handle:vertical
{
background: #808080;
min-height: 60px;
margin: 0px 3px 0px 3px;
border-radius: 3px;
}
QScrollBar::handle:vertical:hover
{
background: #CCCCCC;
}
QScrollBar::handle:vertical:pressed
{
background: #CCCCCC;
}
QScrollBar::add-line:vertical
{
border: 2px solid #484848;
background: #484848;
height: 20px;
subcontrol-position: bottom;
subcontrol-origin: margin;
}
QScrollBar::sub-line:vertical
{
border: 2px solid #484848;
background: #484848;
height: 20px;
subcontrol-position: top;
subcontrol-origin: margin;
}
QScrollBar:up-arrow:vertical
{
width: 8px;
height: 8px;
border-image: url(:/image/up-arrow.png);
}
QScrollBar:up-arrow:vertical:hover
{
border-image: url(:/image/up-arrow_hover.png);
}
QScrollBar:up-arrow:vertical:pressed
{
border-image: url(:/image/up-arrow_hover.png);
}
QScrollBar::down-arrow:vertical
{
width: 8px;
height: 8px;
border-image: url(:/image/down-arrow.png);
}
QScrollBar::down-arrow:vertical:hover
{
border-image: url ..
#3 回 liudianwu 的帖子 [jinzhu1911 03-09 22:19]
liudianwu:是这样的,Qt的BUG (2017-03-09 09:14) 
我也觉得是,没有找找到解决的办法
#4 回 rotung 的帖子 [jinzhu1911 03-09 22:20]
rotung:Qt里面有这个BUG??  ( ⊙ o ⊙ )! 目前使用似乎没遇到过呀.  
如下是我之前使用过的qss:
里面设置了QScrollArea式样以及滚动条QScroll式样,然后是QScrollArea容器中的其他控件的式样。最后在程序初始化用qApp->setStyleSheet()对所有窗口控件应用样式 .. (2017-03-09 09:45) 
我把我的css文件,改为qss文件,还是不行
#5 [jinzhu1911 03-09 22:54]
图片中上面的按钮就是样式表失效的情况,下面的才是正常情况

<< 1 2 >> (1/2)

回复 发表
主题 版块