• 11905阅读
  • 2回复

QTabWidget设置背景图片出问题【已解决】 [复制链接]

上一主题 下一主题
离线zhiming_311
 
只看楼主 倒序阅读 楼主  发表于: 2011-05-23
我做了一个界面,里面的控件背景都是用setStyleSheet()设置的,下面的程序中红色字是设置QTabWidget的背景图片,蓝色字是设置TabBar的代码,窗口中QTabWidget的背景用setStyleSheet()设置不能显示出来,如果我将蓝色字注释掉,就能显示QTabWidget的背景,
涉及到的代码如下:
Send::Send(QWidget *parent)
:QDialog(parent)
{
setupUi(this);
        m_fValue=0;
        m_pTimer = new QTimer(this);
        connect(m_pTimer,SIGNAL(timeout()),this,SLOT(TimerTimeout()));
        Send::setWindowIcon(QIcon(":/images/anfangq.png"));
        
       tabWidget->setStyleSheet("background-image:url(:/images/send.png);");
       textEdit_2->setStyleSheet("background:rgb(236,233,216);");
       textEdit_3->setStyleSheet("background:rgb(236,233,216);");
       textEdit_5->setStyleSheet("background:rgb(236,233,216);");

        this->setStyleSheet("QPushButton{background-image:url(:/images/button_normal2.png);}\
        QPushButton:hover:pressed {border-image:url(:/images/button_push.png);color:rgb(255,255,255);} \
        QPushButton:hover:!pressed {border-image:url(:/images/button_on.png);color:rgb(255,0,0);} ");
        
        tabWidget->setFocusPolicy(Qt::NoFocus);
tabWidget->setStyleSheet("\
QTabBar::tab {\
color: rgb(84,2,119);\
border-image: url(:/images/button_normal.png); \
border: 2px outset green;\
border-bottom-color: rgb(68,66,64); \
border-top-left-radius: 2px;\
border-top-right-radius: 2px;\
max-height: 21px;\
min-width: 8ex;\
padding: 2px;\
} \
QTabWidget::tab-bar {\
alignment: center;\
} \
QTabBar::tab {\
background-image:url(:/images/button_normal.png);\
}\
QTabBar::tab:hover {\
margin-top: 10px; \
background-image:url(:/images/button_on.png);\
}\
QTabBar::tab:selected {\
color: rgb(0,0,255); \
background-image:url(:/images/button_push.png);\
}\
");


}

不注释蓝色字时运行如下:

注释蓝色字时运行如下:


请问是怎么回事?应该如何修改?



离线zhiming_311
只看该作者 1楼 发表于: 2011-05-24
我在背景的地方加了个label,然后在label内加的图片,
离线zhiming_311
只看该作者 2楼 发表于: 2011-06-13
回 楼主(zhiming_311) 的帖子
要设置QTabLabel必须具体指定到那个bar的背景
快速回复
限100 字节
 
上一个 下一个